PassportJS не может пройти проверку подлинности после истечения срока действия cookie - PullRequest
0 голосов
/ 17 апреля 2019

Я использую passportjs и cookie-session для аутентификации с помощью Google OAuth2 и управления сеансами, и она работает впервые.

После того, как срок действия файлов cookie истекает, и пользователь пытается перезагрузить страницу, passport.authenticate('google') метод не работает даже после того, как Google предоставляет токен доступа.Ниже приведен код, который я использую:

app.use(cookieSession({
    maxAge: 10000, // just 10 seconds
    keys: ['mycookiekey']
}))

app.get("/auth", passport.authenticate("google", {
    scope: ["profile"]
}));

app.get("/auth/redirect", passport.authenticate("google", {failureRedirect: '/login'}), (req, res)=> {
    res.redirect("/profile");
    //res.send("You are logged in")
});

Обратите внимание, что maxAge установлен на 10000 (10 секунд), поэтому все работает в течение 10 секунд, но после этого, когда страница перезагружается, Google Authстраница перенаправляется с токеном доступа, но пользователь снова перенаправляется на страницу входа в систему.

Поэтому мой вопрос: почему происходит сбой аутентификации, а если нет, то почему пользователь перенаправляется на страницу входа.Я чувствую, что это может быть связано с созданием файлов cookie.Спасибо

...