Rails是否提供默认的会话超时持续时间?如果是,它在哪里指定?

sha*_*esh 17 session ruby-on-rails

我已经知道如何在rails app中设置到期持续时间,这已经在网上很好地记录了.但我想知道的是,rails中会话到期的默认持续时间是多少,如果有,可以在哪里找到它?

sar*_*gas 17

Rails没有默认的到期时间.session_store的方法定义似乎只有一个默认值:

在第32行 @session_store = :cookie_store

默认情况下,其他配置不存在.因此,除非您为其设置值,否则:expire_after未设置且Rails会话没有到期时间.


小智 14

您可以在初始化文件中配置应用程序的会话信息

config/initializers/session_store.rb
Run Code Online (Sandbox Code Playgroud)

如需设置30分钟,请尝试以下代码:

 YourApp::Application.config.session_store :cookie_store, 
    :key => '_my_session', 
    :expire_after => 30.minutes
Run Code Online (Sandbox Code Playgroud)

  • 我知道这个.但是在rails中是否有任何默认的到期时间? (14认同)
  • 这不回答这个问题. (6认同)