0
我哈希我的密码,并将用户保存到数据库(使用护照)。现在我写了一个api(没有护照)尝试比较密码,但它返回false,虽然我键入相同的字符串。只是好奇它为什么这样?我怀疑我现在知道bCrypt的工作原理。我的代码如下。比较密码与bCrypt返回假
我的模型
module.exports.comparePassword = function(candidatePassword, hash, callback){
bCrypt.compare(candidatePassword, hash, function(err, isMatch){
if(err){
return callback(err);
} else {
console.log("model: " + isMatch)
callback(null, isMatch);
}
});
}
控制器 http://pastebin.com/jCB4YUy0
我以前没有使用过这个功能,但经过一些快速搜索后,它看起来像是在正确使用它。你有没有尝试输出candidatePassword变量来验证它是正确的? –
@EricDubé是的,我不会给我同样的散列 –