2

我的应用程序中有以下行,它让默认 cookie 过期日期为 20 分钟。

Rails.application.config.session_store :cookie_store, key: '_rails-omniauth_session', expire_after: 20.minutes

但是由于某些原因,我想设置特定的到期日期。我已经尝试过遵循路线,但他们无法做到。

request.session_options[:expire_after] = 2.years
ActionController::Base.session_options[:expire_after] = 2.years

如何设置自定义过期日期?

安建议,

谢谢。

4

1 回答 1

1

如果您需要通过应用程序中的所有控制器设置会话的到期期限,只需将以下选项添加到您的config/intializers/session_store.rb文件中:

:expire_after => 60.minutes

如果您需要在不同的控制器或动作中设置不同的过期时间,请在 action 或 some 中使用以下代码before_filter

request.session_options = request.session_options.dup
request.session_options[:expire_after] = 5.minutes
request.session_options.freeze

只需要复制哈希,因为它在那个时候已经被冻结了

资源

于 2017-07-01T19:02:37.143 回答