response.redirect在使用session的node.js中不起作用

时间:2014-06-24 06:47:56

标签: javascript node.js session redirect express

我的登录页面中有以下代码,一旦用户通过身份验证,我就会将用户重定向到主页。

此代码工作正常并将我重定向到主页但是当我添加

app.use(express.cookieParser());
app.use(express.session({secret: '1234567890QWERTY'}));

这些引用,response.redirect不会工作,主页会继续加载,但响应永远不会结束。

app.post('/', function(request, response){
    if(request.body.user.name!= undefined && request.body.user.password !=undefined)
    {
        Auth.autoLogin(request.body.user.name, request.body.user.password, function(o){
        if (o != null){
        console.log("Login Successful");                 
                response.redirect('/home'); 
                } else{
        response.render('index', { error-message: 'Login Failed' });
                }
    });
    } 
    else
        console.log("Please enter valid input");
});

请建议我任何解决方案

1 个答案:

答案 0 :(得分:0)

  

...页面继续加载但响应永远不会结束

这看起来像你的Auth中间件有问题。当在中间件上没有调用next()时会发生页面加载,因此没有响应。