. В настоящее время я пытаюсь создать модуль аутентификации для своего проекта в node.js?
Я уже видел несколько примеров использования bcrypt для генерации хэшей, например
https://github.com/bnoguchi/mongoose-auth/blob/master/lib/modules/password/plugin.js https://github.com/Turbo87/locomotive-passport-boilerplate/blob/master/app/models/account.js
Однако по какой-то причине они используют функцию bcrypt.hashSync (). Поскольку bcrypt хорош тем, что требует -времени, не будет ли разумнее использовать вместо этого асинхронную функцию, чтобы не блокировать код, т.е.:
User.virtual('password')
.get( function () {
return this.hash;
})
.set( function (password) {
bcrypt.hash('password', 10, function(err, hash) {
this.hash = hash;
});
});
Не могли бы вы объяснить мне, какой способ лучше и почему? Благодарю вас!