Почему мой логин пользователя MERN / Passport не перенаправляется в случае успеха? - PullRequest
0 голосов
/ 09 января 2020

При вводе правильной информации для входа ничего не происходит. Нет журналов ошибок или перенаправления.

router.post("/login", (req, res, next) => {
  passport.authenticate(
    "local",
    { successRedirect: "/dashboard" },
    (err, user, done) => {
      if (!user) {
        return res.json(done);    //sends error msg ("email not registered", "password incorrect", etc.)
      }
    }
  )(req, res, next);
});

В чем может быть проблема для этого?

1 Ответ

0 голосов
/ 10 января 2020

passport.authenticate принять 2 параметра. Если вы выбираете пользовательский обратный вызов, то удаляете { successRedirect: "/dashboard" }. Пример кода:

app.get('/login', function(req, res, next) {
  passport.authenticate('local', function(err, user, info) {
    if (err) { return next(err); }
    if (!user) { return res.redirect('/login'); }
    req.logIn(user, function(err) {
      if (err) { return next(err); }
      return res.redirect('/users/' + user.username);
    });
  })(req, res, next);
});
...