2 回答
TA贡献1833条经验 获得超4个赞
你可以返回一个承诺:
async function checkAcount(usr, pass) => {
const sql = "SELECT * FROM account WHERE userName = ?" ;
return new Promise((resolve, reject) => {
con.query(sql, [usr], (err, result) => {
if(err) {
reject(err);
throw err;
}
if(result.length > 0){
bcrypt.compare(pass, result[0].password, function(err, result1) {
if(result1 == true){
resolve(result);
return true;
} else{
reject(err);
return false;
}
});
} else {
reject(err);
return false;
}
});
});
}
不要使用字符串连接来构建 SQL 查询。这允许 SQL 注入。
TA贡献1824条经验 获得超8个赞
bcrypt 返回一个承诺 https://www.npmjs.com/package/bcrypt#with-promises
bcrypt.compare(pass, result[0].password).then((result) => { return result; })
添加回答
举报