【问题标题】:res.redirect is not work inside passport functionres.redirect 在护照功能中不起作用
【发布时间】:2018-03-07 18:24:43
【问题描述】:

在我的登录模块中输入所有详细信息后,我使用的是passport.js,如果详细信息正确,它将返回用户值。

在我的 route.js 中

app.post('/verifyotp', function (req, res, next) {
        passport.authenticate('local-otplogin', function (err, user, info) {
            if (err)
            {                        
            return next(err); }
            if (user) {
                console.log("user is there")
                req.logIn(user, function (err) {
                    console.log("req.logIn")
                    if (err) { 
                        console.log("err")
                        return next(err); 
                    }
                    console.log("No err") //Printing this value
                    console.log(req.user)

                    mongo.user.findOneAndUpdate({ '_id': user._id }, { 'log_count': 0 }, { upsert: true }, function (err, response) {
                    });
                    return res.redirect('/dashboard'); // but redirect is not happening

                });
            }
        })(req, res, next);
    });

我也获得了 req.user 值,但没有重定向到仪表板。

我的代码有错误吗?

【问题讨论】:

    标签: node.js login passport.js passport-local


    【解决方案1】:

    控制台显示什么?

    你确定在没有错误但没有定义用户的情况下不输入?

    passport.authenticate('local-otplogin', function (err, user, info) {
    
       if(err)
       {
         console.log("An error occured");
       }
       else if(user)
       {
          console.log("user authenticated");
       }
       else
       {
          console.log("No error but user not found");
       }
    

    【讨论】:

    • 感谢您的回复。我解决了我的问题
    • 您好@Vishnu,您能分享一下您是如何解决问题的吗?
    猜你喜欢
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 2018-12-07
    • 1970-01-01
    • 2018-03-19
    • 1970-01-01
    • 2019-02-07
    • 2020-12-13
    相关资源
    最近更新 更多