小编Ani*_* GR的帖子

expressJS是否使用express()函数(全局函数)?

第二条语句中使用的express()函数是全局函数吗?在哪里可以找到它的声明?我在项目文件夹中找不到它。

var express = require('express');
var app = express();
var fs = require("fs");
Run Code Online (Sandbox Code Playgroud)

javascript node.js express

4
推荐指数
1
解决办法
477
查看次数

如何在节点js中同步crypto模块的crypto.randomBytes()函数?

crypto = require('crypto')
async function generateToken(){
  await crypto.randomBytes(256,function(ex, buffer) {
    if (ex) {
      console.log("error generating token");
    }

        var token =  crypto
          .createHash('sha1')
          .update(buffer)
          .digest('hex');

        console.log(token);



  }
)}
console.log("before token");
generateToken();
console.log("after token");
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我想同步generateToken()方法。所以我在函数中添加了asyncandawait,但我没有得到预期的输出

before token 
7f4f27037cd7dd65bd03d7e2fe859e608b9eebe2
after token 
Run Code Online (Sandbox Code Playgroud)

我得到的输出是

before token 
after token
7f4f27037cd7dd65bd03d7e2fe859e608b9eebe2
Run Code Online (Sandbox Code Playgroud)

我在上面的代码中做错了什么?

编辑: 以下代码可以工作,但不同步。

crypto = require("crypto");
function generateToken() {
  return new Promise((resolve, reject) => {
    crypto.randomBytes(256, function(ex, buffer) {
      if (ex) {
        reject("error generating token");
      }
      const token = …
Run Code Online (Sandbox Code Playgroud)

node.js async-await

4
推荐指数
2
解决办法
5375
查看次数

标签 统计

node.js ×2

async-await ×1

express ×1

javascript ×1