Javascript 如何在节点中使用bcryptjs散列密码?
我通过req.body接收密码,并将其散列如下:Javascript 如何在节点中使用bcryptjs散列密码?,javascript,node.js,express,mongoose,bcrypt,Javascript,Node.js,Express,Mongoose,Bcrypt,我通过req.body接收密码,并将其散列如下: const { name, email, password, number } = req.body; let userExist; userExist = await User.find({ email: email }); if (userExist.length) { const err = new Error('User already exists'); return
const { name, email, password, number } = req.body;
let userExist;
userExist = await User.find({ email: email });
if (userExist.length) {
const err = new Error('User already exists');
return next(err);
}
let hashedPass;
try {
hashedPass = await bcrypt(req.body.password, 12);
} catch (e) {
console.log('error here bro');
return next(e);
}
const createdUser = new User({
name,
email,
password: hashedPass,
number,
ads: []
});
它记录了“这里出错,兄弟”,我不知道为什么
如何对来自使用bcrypt js的用户的密码进行哈希?通过在bcrypt之后添加哈希解决了这个问题
bcrypt.hash(....)
您还可以通过以下方式向密码中添加盐:
const salt = await bcrypt.genSalt(7);
const hashPassword = await bcrypt.hash(req.body.secret, salt);
提示:console.error(e)
要找出错误是什么,兄弟。