ruby-on-rails-3 - 关闭 session 并重定向到 Ruby on Rails 登录

标签 ruby-on-rails-3 session-timeout

我正在与 session[:hash_name] 一起工作在 ruby​​ on rails 中保存 session 信息,如用户名和内容。

我试图找到一种方法来使此 session 过期,而无需用户注销。特别是在两种情况下:一段时间后需要过期和用户关闭浏览器时。

到目前为止我找到了another参数调用 cookies[:hash_name]可能会在一段时间后过期。但我不确定如何在每个用户请求中检查此参数,然后调用 reset_session。当 session 重置时,我需要将用户重定向到登录页面。

任何解决这两个问题的建议都非常感谢。

最佳答案

您可以将 session 存储在 cookie 中,默认情况下它是 session cookie(意味着当用户关闭浏览器时它会消失),并使用 :expire_after 添加一个过期时间。 .

这可以在 config/initializers/session_store.rb 中配置.例如:

Yourapp::Application.config.session_store :cookie_store, 
                                         key: 'your_session_id',
                                         expire_after: 45.minutes

关于ruby-on-rails-3 - 关闭 session 并重定向到 Ruby on Rails 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13281973/

相关文章:

sql - 如何让elasticsearch执行类似于SQL 'LIKE'

ruby-on-rails-3 - 是什么原因造成 "ArgumentError (dump format error)"?

ruby-on-rails - rails : Is there an update or update_attributes that throws exception on failure?

asp.net-mvc-4 - 使用信号器时的 session 超时

ruby-on-rails - Rails 3 应用程序中没有方法错误

ruby-on-rails - 时间可用性比较,使用 Ruby on Rails

php - 如何在 php 上删除/取消设置 cookie?

asp.net - ASP.Net 中的 session 超时设置

session 超时后的 Grails Spring Security 重定向

java - ADF session 超时自动重定向而不弹出对话框