【问题标题】:Giving bad request with Passport JS使用 Passport JS 发出错误请求
【发布时间】:2019-08-10 01:54:14
【问题描述】:

我的护照 req.login 有问题,当用户使用它的电子邮件和密码登录时,护照执行它会路由到错误请求而不是显示 /productos2,我使用的是 ejs 和猫鼬

我已经尝试直接在 req.login 上请求密码和用户名,但仍然不起作用

app.get("/productos2", function(req, res, next) {
    if(req.isAuthenticated()) {
          next();
    res.render("productos2");
    } else {
        res.redirect("/login");
    }
});


app.post("/login", function(req, res, next) {

    const user = new Credential ({
    username: req.body.email,
    password: req.body.password
    });


    req.login(user, function(err) {
        if (err) {
            console.log(err);
        } else {
        passport.authenticate("local")(req, res, function(){
        res.redirect("/productos2");
      });
     }
   });
 });

所以我想做的就是成功地将它路由到 productos2 路由。

【问题讨论】:

    标签: javascript node.js express passport.js


    【解决方案1】:

    试试这个。

      passport.authenticate("local")(req, res, function(){
        res.redirect("/productos2");
      });
    

      passport.authenticate('local', {
        successRedirect : '/productos2',
        failureRedirect : '/login',
        failureFlash : true // allow flash messages
      });
    

    【讨论】:

    猜你喜欢
    • 2016-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多