1

默认情况下,Rails 中的机制似乎是设置会话 cookie,以跟踪用户是否登录。虽然这将确保用户在关闭浏览器时注销,但我还需要在不活动的情况下将他注销。我有以下用例:

  • 用户已登录
  • 他在一个特定的页面上(websockets 供电,没有刷新)
  • 客户端 ping 服务器,以便让服务器知道他仍然处于活动状态
  • 如果超过 X 分钟没有任何活动迹象,则应注销用户

如何处理这样的用户案例?我考虑过在 cookie 上设置几分钟的过期时间。我希望每次客户端 ping 服务器时将 cookie 的过期时间设置回原始持续时间。

我对如何解决这个问题持开放态度。

4

2 回答 2

1

如果您使用 devise,它已经存在,您可以在 devise.rb https://github.com/plataformatec/devise/blob/master/lib/generators/templates/devise.rb#L132中配置超时持续时间

于 2012-12-23T19:40:24.107 回答
1

使用模块超时。在文档中阅读有关它的内容:http: //github.com/plataformatec/devise

信息:迁移评论以回答。

于 2012-12-23T22:49:25.210 回答