對nodejs來說還是比較新的,所以我經常被整個異步事物絆倒。我正在嘗試使用bcrypt和bookshelf在將密碼存儲到數據庫之前對其進行散列處理。漂亮的直線前進吧...使用bcrypt和bookhelf無法將散列密碼保存到數據庫
我打電話保存操作,像這樣,
create(data) {
this.logger.info(`creating account`);
return bookshelf.transaction(trx => {
return new Account().save(data, { method: 'insert', transacting: trx });
});
}
,並在賬戶模式,我攔截攢動
initialize: function() {
let _this = this;
const saltRounds = 10;
_this.on('creating', function() {
bcrypt.genSaltSync(saltRounds, function(err, salt) {
bcrypt.hashSync(_this.get('password'), salt, function (err, hash) {
if (err) throw err;
_this.set('password', hash);
});
});
});
}
一切我已經看了到目前爲止說這應該工作,但純文本密碼仍然保存到數據庫而不是哈希密碼。我究竟做錯了什麼?
非常感謝隊友,這兩種方法工作大! – user3010617