Node.js 未处理的PromisejectionWarning:错误:需要数据和salt参数
我有以下代码错误:Node.js 未处理的PromisejectionWarning:错误:需要数据和salt参数,node.js,bcrypt,Node.js,Bcrypt,我有以下代码错误: async function get(user) { user = await Joi.validate(user, userSchemaGet, { abortEarly: false }); await User.findOne( {_id: user._id}, (err, res) => { if(err){ console.log("ERROR : ") console.log(err)
async function get(user) {
user = await Joi.validate(user, userSchemaGet, { abortEarly: false });
await User.findOne(
{_id: user._id},
(err, res) => {
if(err){
console.log("ERROR : ")
console.log(err)
} else {
console.log("res")
console.log(res);
if(bcrypt.hash(user.password, 10) === res.hashedPassword) {
return res;
}
}
});
}
我读了所有关于这个主题的文章,但什么也没发生。
注:它在最后一天工作得很好…1)可能是用户。密码为空或未定义。在将值传递给散列
函数之前,请检查用户
值
2) bcrypt.hash
是一个承诺,但您将其用作普通函数
3) bcrypt
有一个特殊的比较函数,用于检查passowrd是否与哈希匹配。你应该在这里用