首页 > 解决方案 > 如何在节点中使用 bcryptjs 对密码进行哈希处理?

问题描述

我通过 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 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 对来自用户的密码进行哈希处理?

标签: javascriptnode.jsexpressmongoosebcrypt

解决方案


您还可以通过以下方式在密码中添加盐:

const salt = await bcrypt.genSalt(7);
const hashPassword = await bcrypt.hash(req.body.secret, salt);

推荐阅读