我通过登录表单发布请求传递用户凭据(用户名和密码),并尝试检查数据库(oracledb),如果凭据匹配,则呈现另一个页面。
但是,尽管凭据匹配,我仍然收到“身份验证失败”错误
app.post("/", async function(req, res) {
let connection;
const {username,password}=req.body;
const sqlquery = 'SELECT COUNT(*) AS userCount FROM USERS WHERE EMAIL = :username AND PASSWORD = :password';
connection = await oracledb.getConnection(dbConfig);
let result = await connection.execute(
sqlquery , {username,password} ,function(err,result){
if (err) {
console.error('Error executing the query:', err);
return res.status(500).send('Internal server error');
}
const userCount = result.rows[0];
console.log(userCount);
if (userCount === 1) {
return res.render("playercentre");
} else {
return res.status(401).send('Authentication failed');
}
}
);
});
console.log(userCount) 返回 1 但我仍然收到错误而不是渲染页面。不知道我哪里遗漏了一些东西。
我发现了错误。应该是如果
(userCount == 1)
而不是 if (userCount === 1)