javascript - 可重用的 bcrypt 函数,从函数问题返回数据
问题描述
我有这个散列函数,我想取回所有使用 bcryptjs 生成的散列。当我console.log(encrypt(password))
返回时undefined
。我试图做一个Promise.all
,但我对承诺不是很好。考虑到它返回未定义的事实,我的猜测是它是函数的结构方式。
功能
const bcrypt = require("bcryptjs");
module.exports = function encrypt(password) {
bcrypt.genSalt(10, async (err, salt) => {
const encryptedPassword = await bcrypt.hash(password, salt);
const details = {
password: encryptedPassword,
};
return details;
});
};
让我知道您是否需要我的其他任何东西。
解决方案
像这样使用 async 和 await 来加密密码
const bcrypt = require("bcryptjs");
module.exports = async function encryptPassword(password) {
return await bcrypt.hash(password, 10)
};
推荐阅读
- jenkins - 如何处理管道中groovy代码中的闭包范围
- c# - 登录数据库失败 - Crystal Reports VS2015
- java - 如何使用 volley 从 Android 将 mp3 音频文件上传到 php?
- c++ - 当 d == 0 时,为什么 'd /= d' 不抛出除以零异常?
- python - 如何在不使用地图/SQL 的情况下在列表中查找最大值和最小值?
- c# - Azure WebJob BlobTrigger - 输出 Blob 使触发器不触发
- java - 左循环旋转一个 ArrayList 然后获取最大元素的索引
- flutter - Flutter VSCode 智能感知不适用于单文件包
- php - 如何在 PHP 中循环显示 WordPress 帖子的 while 语句?
- php - 有没有办法按照一定的标准将最多 3 个多维数组与 OOP PHP 对象组合成一个数组?