Я использую 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.Спасибо