我在我的Rails网站上有一个由用户监控的特定URL。它使用 WebSocket 连接来保持更新,但可以长时间等待数据。我目前使用Devise Gem进行用户登录控制。是否可以禁用此特定 URL 的用户超时?
谢谢
我还没有测试过这个,所以我不能确认它会起作用,但你可以很容易地尝试一下。
向User
模型添加属性,类似于 prevent_timeout
.然后,在您正在谈论的特定控制器和操作中,抓取current_user
并将其设置为 true
.您还应该向ApplicationController
添加一个before_filter
,将prevent_timeout
设置为 false
,以确保在用户离开您的特殊 URL 后,它始终被设置回 false。最后,使用设计的动态超时功能检查self.user
是否已将prevent_timeout
设置为true
。如果是true
则将超时设置为一年(基本上永远不会超时(。否则,请将其设置回默认值。