【发布时间】:2015-01-20 21:50:16
【问题描述】:
我的应用中有一个简单的授权中间件。它在 GET 和 POST 正常请求中都能正常工作,但是当我通过 ajax 发出 POST 请求时,它不会重定向到 401 页,而是忽略中间件并继续我的模型并将数据插入到数据库中。
代码:
function(req, res, next){
if(!req.session.user){
res.status(401);
res.redirect('/401');
}
next(); }
有人能解释一下为什么这个中间件在 ajax 请求下无法正常工作,但可以正常处理正常请求吗?
【问题讨论】:
-
您是否尝试将
next()放在else子句中,或者至少在res.redirect('/401')之后放置一个return;,以便在到达next()之前停止执行? -
感谢您的回复。退货;在 res.redirect() 之后;为我工作。 :)
标签: javascript jquery ajax node.js express