如何使用get()和res.sendFile()函数redirect页面?

这只是不redirect到页面!

我把这个在index.html中:

$.get( "/loginPage", function( data ) {}); 

index.html页面主要检查用户是否login。如果是,则redirect到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 logged in!” 消息,所以我认为一切工作正常。

一些相关信息:

我已经将loginPage.html放在公共目录以及之前的目录中。 我用这个:

 app.use(express.static(__dirname + '/public')); 

另外,我在Windows上运行它。 反斜杠/正斜杠是否会因此而导致问题?

改变这一行:

$.get( "/loginPage", function( data ) {});

至:

window.location = '/loginPage'

所有的服务器端代码在那里工作,问题是,客户端没有做任何与ajax结果一旦有了它。 通过简单地将浏览器窗口指向该URL,它将跟随任何redirect或呈现所产生的有效载荷。