【问题标题】:How long is session stored in express-session on server?会话在服务器上的快速会话中存储多长时间?
【发布时间】:2021-08-05 22:41:37
【问题描述】:

我使用 ExpressJS 和 express-session 进行会话管理。根据它的 NPM 页面,我们可以添加一个 maxAge 和 cookies.expires。但是,这两者都管理 cookie 的到期日期。但是服务器端呢?会话存储将会话保留多长时间?如果我们不设置 maxAge 和 cookies.expires 并且用户突然关闭浏览器怎么办?服务器端的会话数据会不会被永久保存而不被删除?

【问题讨论】:

  • 如果你不设置 maxAge 那么它将一直在服务器上直到应用程序运行(重新启动将删除存储在服务器上的会话)

标签: node.js express session session-cookies express-session


【解决方案1】:

不,不会的。如果您没有指定单独的存储(例如 redis、mongodb 等),会话数据将存储在内存(RAM)中

当您关闭服务器时,所有信息都将被删除

【讨论】:

  • 问题是关于一个单独的会话存储。如果我们使用 mongo 或 redis 等单独的会话存储,并且用户在未注销的情况下关闭浏览器,会发生什么情况?
  • 基本上会话数据存储在您选择的数据库中。通常在配置express-session 时,您会得到一个名称为store 的参数。这是使用它的文档npmjs.com/package/express-session#compatible-session-stores
  • 我知道如何使用会话存储。我要问的是会话数据在商店中存储了多长时间
  • 它将永远存在,直到您的服务器运行为止。文档中没有说明默认到期时间。在您的问题中,您提出了不同的问题,这就是为什么我第一次无法为您提供答案
猜你喜欢
  • 2016-07-06
  • 2021-10-29
  • 1970-01-01
  • 2021-06-01
  • 2013-01-04
  • 2018-06-23
  • 2015-02-04
  • 2021-12-16
  • 2022-07-19
相关资源
最近更新 更多