加密 不成功
加密这块, save中的console.log(user); 在bcrypt.genSalt 之前执行,也就是说,数据保存完了采取加密 ,所以数据库里的密码是没有加密的 ,这个怎么破。
bcrypt.genSalt(SALT_WORK_FACTOR,function(err,salt){
if(err){ console.log(err); return next(err)}
bcrypt.hash(user.password,salt,function(err,hash){
if(err) {return next(err)}
user.password = hash;
console.log(user);
console.log("password" +user.password);
next();
})
})
user.save(function(err,user){
if(err){
console.log(err);
}
res.redirect('/admin/userList');
console.log(user);
})
部分打印结果:
Mongoose: mpromise (mongoose's default promise library) is deprecated, plug
your own promise library instead: http://mongoosejs.com/docs/promises.html
{ __v: 0,
name: 'dce',
password: '123', //save 中打印的user 和数据库查询到的结果一致
_id: 5829f0ad642bfe14a4d5a282,
meta:
{ updateAt: Tue Nov 15 2016 01:13:17 GMT+0800 (中国标准时间),
createAt: Tue Nov 15 2016 01:13:17 GMT+0800 (中国标准时间) } }
{ __v: 0,
name: 'dce',
password: '$2a$10$eCjEUh0YUcd/PurwKHYpQ.Qok7w1qNIzlSBOdveXES26Dd2gHREri',// 加密后打印的user
_id: 5829f0ad642bfe14a4d5a282,
meta:
{ updateAt: Tue Nov 15 2016 01:13:17 GMT+0800 (中国标准时间),
createAt: Tue Nov 15 2016 01:13:17 GMT+0800 (中国标准时间) } }
password$2a$10$eCjEUh0YUcd/PurwKHYpQ.Qok7w1qNIzlSBOdveXES26Dd2gHREri