首页 > 解决方案 > node.js API 函数没有异步版本怎么办?

问题描述

我正在尝试创建一个安全的随机令牌

const crypto = require("crypto");
const { promisify } = require("util");
exports.createRandomToken = async () => {
  const randomBytes = promisify(crypto.randomBytes);

  const secretToken = await randomBytes(
    parseInt(process.env.RANDOMBYTES_BYTES_NUMBER)
  );

  const secretTokenHex = secretToken.toString("hex"); //sync
  return secretTokenHex;
};

尽管crypto.randomBytes()有异步版本, 但 buffer.toString() 没有。

在这种情况下我该怎么做才能不阻塞事件循环(必须遵循express.js 文档所说的做法?

标签: node.jsasynchronousbufferevent-loop

解决方案


推荐阅读