我正在使用 express-session、passport、connect-mongo 和 mongodb-atlas 最新版本来创建会话并将它们保存在服务器上,问题是当 app.use(passport.session()) 时,甚至会创建此会话如果用户没有登录。
app.use(session({
// key: "id",
secret: process.env.SESSION_SECRET,
cookie: {
httpOnly: true,
sameSite: true,
// secure: process.env.IN_PROD,
maxAge: 10800000,
}, // three hours in miliseconds
store: new MongoStore({
mongooseConnection: mongoose.connection,
autoReconnect: true,
collection: "admin.mySessions",
serialize: serialize
}),
resave: false,
saveUninitialized: false,
name: 'Id'
}));
这导致当护照被初始化和护照会话时,cookie 与会话 id 一起保存并且会话被保存在 mongodb mi 问题是如何只为登录的用户保存会话