экспресс 3.0 и паспортная аутентификация
Я использую [email protected] с [email protected] и использую локальную стратегию для аутентификации.
Кажется, все работает нормально и правильно перенаправляет на успех и неудачу
app.post('/login', passport.authenticate('local', { failureRedirect: '/' }),
function(req, res) {
console.log(req.isAuthenticated()); // true
res.redirect('/users/' + req.user.id );
});
Но если я добавлю обеспечить аутентификацию на профиле маршрута
app.get('/users/:id', ensureAuthenticated, routes.user);
function ensureAuthenticated(req, res, next) {
console.log(req.isAuthenticated()); // false
if (req.isAuthenticated()) { return next(); }
res.redirect('/');
}
он перенаправляет меня обратно на «/»; (то есть страница входа в систему) вместо «/ пользователи / id»; (профиль пользователя) после входа в систему. Проблема в том, что req.isAuthenticated () всегда возвращает false, и в отладке нет переменной req.user.
Это проблема с экспрессом 3 и паспортным взаимодействием или я что-то не так сделал?