Rails会话之后会发生什么:expire_after时间到了?

时间:2014-05-01 20:25:48

标签: session ruby-on-rails-4

会话是否为零?更改是否仅在下一个请求中生效?

我想我现在只问了三个问题......

1 个答案:

答案 0 :(得分:7)

您可以尝试使用类似设置进行探索:

AppName::Application.config.session_store :cookie_store, key: '_session_key', expire_after: 20.seconds

然后在浏览器中打开开发工具,转到cookies并选择localhost Cookie,看看会发生什么。

我发现了:

  1. 会话cookie在到期时间后被删除

  2. 当任何请求(甚至背景ajax请求计数)时,cookie的到期时间会自动更新(重新设置)

  3. 默认情况下,效果将在下一个请求(例如刷新页面)时发生,如果使用典型身份验证(例如has_secure_password_),则应注销用户

  4. 我在ActionController::Base文档页面上发现the last comment对此主题非常有帮助