admin管理员组

文章数量:815012

Bcrypt.compare不比较密码

我有一个bcryptpare函数,但是它无法比较密码,而是输入的任何密码都可以返回正常状态。请参阅下面的代码,帮帮我。谢谢

bcryptpare(req.body.password, users.password).then(
    (valid) => { 
        if (!valid) {
            return res.status(401).json({
                error: new Error('Incorrect password!')
            });
        }
        const token = jwt.sign(
            { userId: users._id },
            'RANDOM_TOKEN_SECRET',
            { expiresIn: '24h' }
        );
        res.status(200).json({
            userId: users._id,
            token: 'token'
        });
    }
).catch(
    (error) => {
        res.status(500).json({
            error: error
        });
    }
);
回答如下:

我曾经有过这样的东西。您的密码列或表格多长时间? Bcrypt使用大于60个字符的字符串对密码进行哈希处理。是您在该范围内的专栏吗?

本文标签: Bcryptcompare不比较密码