高速连接会话到期未按预期工作



在我使用 Express 开发的 Web 应用程序中.js当用户未处于活动状态超过 10 分钟时,会话过期时出现问题。我使用 connect-couchdb 作为会话存储。

我尝试设置 req.session.cookie.maxAge = 600000。但这会导致会话在登录后 10 分钟过期,而不考虑用户活动。我对文档的理解是 req.session.touch() 将由连接中间件自动调用,因此 maxAge(和到期日期)应该刷新,以便它再持续 10 分钟,但它没有发生!!

我还尝试在每个请求上将maxAge设置为600000并调用req.session.save(),但即使这样也没有效果。

我做错了什么?

你没有做错任何事---这是 Connect 中的一个错误。会话 cookie 在服务器中更新,但不会推送到客户端,因此客户端不断尝试使用旧的 cookie,它将比您想要的更早过期。

更多细节和讨论在这里。

最新更新