Jig*_*ael 0 javascript mysql node.js promise
所以我正在尝试使用 Node.js 和 MySQL 在后端构建一些基本的注册。
let params = [email, password];
const salt = bcrypt.genSaltSync(10);
var promise = bcrypt.hash(password, salt);
let query = 'insert into users (email, password) values (?,?)';
connection.promise().query(query, params, (err, result, fields) => {
console.log(err);
if(err && err.code === 'ER_DUP_ENTRY') {
res.status(400).json({
"message": "There is an account already associated with this email adress!"
});
res.end();
}
else {
res.status(200).json({
"message": "User created!"
});
res.end();
}
});
Run Code Online (Sandbox Code Playgroud)
我的问题是当我使用 bcrypt.hash 函数时,我不知道如何获取散列密码,因为该函数返回给我一个承诺。那么我如何访问散列密码以便稍后我可以将其引入我的数据库中?我知道我可以使用promise.then(),但仍然不知道获取密码后该怎么做。任何想法,这看起来很容易,但我仍然不够聪明
您应该使用await 或Usebcrypt.hashSync()方法而不是 bcrypt.hash(),
const salt = bcrypt.genSaltSync(10);
const hashedPassword = bcrypt.hashSync(password, salt);
//or
const hashedPassword = await bcrypt.hash(password, salt);
Run Code Online (Sandbox Code Playgroud)
参考文档: https: //www.npmjs.com/package/bcrypt
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |