【发布时间】:2020-06-05 05:47:05
【问题描述】:
我正在尝试在 JavaScript、Node 和 Express 应用程序上构建我的登录页面。 Iv 登录正确,当用户密码和用户名匹配时,我得到响应。所以那部分很好。但是一旦他们匹配 id 喜欢把他们带到主屏幕。但是,我不知道该怎么做。我找到了res.redirect("route"),但它返回:res.redirect is not a function。生病添加我的代码:```app.post('/lgnfrm', function (req, res) {
var usrEmail= req.body.usrEmail;
var usrPassw = req.body.usrPass;
// INSERT WORKING
var sql = 'SELECT * FROM loginInfo WHERE email = (?)'
connection.query(sql, [usrEmail], function (err, res) {
// IF/ELSE CHECKING IF PASSWORD AND EMAIL MATCH DB VALUES
if (err) {
//
console.log(err)
} else {
// CHECKS IF THE EMAIL MATCHES DB
console.log("VALID EMAIL")
if (res.length > 0){
// IF EMAIL VALID, CHECK PASSWORD
if (res[0].passW == usrPassw) {
res.redirect("/home");
console.log("LOGIN SUCCESSFUL");
} else {
// INCORRECT PASSWORD
console.log("PASSWORD INCORRECT");
}
}
}
})
}) ```
【问题讨论】:
-
因为你需要使用 express 实例响应对象而不是 sql 响应
-
你能深入一点吗?不完全理解。
-
在您的代码中某处您有类似
app.get("/some-route", (req, res) { "you handle the request here})的内容,您将这个res与您在代码 sn-p 中提供的另一个res互换。 -
明白了。但是我不想在身份验证成功后这样做吗?
-
是的,当然,这里我只是展示了响应对象之间的区别
标签: javascript mysql node.js express