这不是重定向到页面!
我把它放在index.html中:
$.get( "/loginPage", function( data ) {});
index.html页面基本上检查用户是否已登录。如果是,则重定向到lobbyPage。 后端代码:
app.get('/loginPage', function(req,res){
console.log("Hello");
sess=req.session;
if(sess.username!=undefined)
{
res.redirect('/lobby');
}
else
{
console.log("Not logged in!");
res.sendFile(__dirname + '/public/loginPage.html'); //This isn't working!
}
});
res.sendFile就是不会发送loginPage!控制台正在打印“Hello”和“Not not in!”消息,所以我认为其他一切都正常。
一些相关信息:
我已经将loginPage.html放在公共目录以及它之前的目录中。 我用过这个:
app.use(express.static(__dirname + '/public'));
另外,我在Windows上运行它。反斜杠/前进是否会导致问题?
答案 0 :(得分:1)
更改此行:
$.get( "/loginPage", function( data ) {});
为:
window.location = '/loginPage'
所有服务器端代码都有效,问题是客户端在获得ajax结果后不会做任何事情。只需将浏览器窗口指向该URL,它就会跟随任何重定向或渲染生成的有效负载。