0

我正在尝试将会话存储到 MongoDB 中。我面临的问题是我无法将 MongoDB TTL 设置为会话持续时间。这是我的代码:

app.use(session({
    secret: md5("test"),
    resave: false,
    saveUninitialized: true,
    store: MongoStore.create({ mongoUrl: 'mongodb://localhost/test-db' }),
    cookie: { secure: false }
}));

如果我不将会话存储在数据库中,这很简单,因为我必须删除存储键,并且由于我的 cookie 的 maxAge 没有定义,它会在用户没有关闭浏览器时持续存在。但是如果我存储在 MongoDB 中,因为 maxAge 或 expires 没有定义,它会默认设置 14 天的过期时间,这是我不想要的。这真的很烦人,因为如果重新启动我的浏览器,我将只有一个客户端有多个会话。

那请问您有解决方案吗?

谢谢 !

4

0 回答 0