我想在node express中创建一个登录页面。在检查了密码和用户名后,该页面会在下一页请求信息,但该页面无法加载。
在发布请求时,我将密码和用户名发送到服务器并进行检查:
router.post('/',function(req, res, next) {
dbs.executeQuery("select Id from Admin where username=\"" +username+"\"
and password=\""+password+"\"",
(err,data)=>{
if (!err && data.length != 0){
req.method = "GET";
req.url = "/menu";
router.handle(req,res,next);
}
else{
console.log("error");
})
})
此处将执行查询,但不会呈现索引。ejs:
router.get("/menu", function(req, res, next) {
dbs.executeQuery("select * from Menu", (err, data) => {
if (!err) {
obj = { print: data };
res.render("index", obj);
} else {
console.log("Cant find data");
res.render("index", { print: {} });
}
});
});
答案 0 :(得分:0)
也许您应该尝试使用重定向方法:
router.post('/',function(req, res, next) {
dbs.executeQuery("select Id from Admin where username=\"" +username+"\"
and password=\""+password+"\"",
(err,data)=>{
if (!err && data.length != 0){
res.redirect('/menu'); // <---- HERE
}
else{
console.log("error");
})
})