使用会话作为拦截器,代码如下所示
app.use(function (req, res, next) {
var url = req.originalUrl;
var arr =[];
arr = req.originalUrl.split('/');
if (arr[1] != "login" && !req.session.user) {
return res.redirect(302, "/login");
}
next();
});然后我收到http状态代码为304,页面不刷新。

如何使状态代码为302并刷新页面?
发布于 2016-05-13 04:44:39
当前,您正在设置发生重定向的url的url状态,而不是登录页面。
使用此代码,例如,如果您访问url '/home‘(授权条件失败),那么您将设置状态代码302 of /home,而不是/login。
溶液
设置login路由的状态。
例如。
app.get("/login", function(req, res){
return res.status(302).send('Welcome to login page');
});希望它能帮到你。
发布于 2020-11-24 22:16:05
304状态代码是指如果页面是从缓存内存加载的,而不是从服务器重新下载以获得302,则只需清除缓存并进行硬重置。
https://stackoverflow.com/questions/37200811
复制相似问题