我正在使用passportjs
和cookie-session
来通过Google OAuth2进行身份验证和会话管理,并且这是第一次使用。
在Cookie过期且用户尝试重新加载页面后,即使Google提供了访问令牌,passport.authenticate('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创建有关。谢谢