此问题在此处已有答案:
Trying to hash a password using bcrypt inside an async function(7个答案)
With async the bcrypt.hash function returns undefined but it works fine with .then(1个答案)
昨天关门了。
我有这个功能,它保存在数据库中的用户:
exports.saveUser = ({ first_name, last_name, email, password }) => {
const query = "insert into users (first_name, last_name, email, password_hash) values ($1, $2, $3, $4) RETURNING *";
bcrypt.hash(password, 10, async function (err, hash) {
const res = await db.query(query, [first_name, last_name, email, hash]);
return res.rows[0];
});
return res;
};
我在bcrypt回调函数中有一个async函数,在这个函数中插入数据,我在这里返回插入的行。我如何让它返回saveUser函数?
所以最后saveUser()
就是那个res.rows[0]
记录?
1条答案
按热度按时间n9vozmp41#
我已经使bcrypt.hash等待而不是回调。然后使saveUser异步ad它工作