Rails会话超时/警告

时间:2016-01-07 21:56:19

标签: ruby-on-rails ruby ruby-on-rails-4

我一整天都在努力研究这个问题,但我们真的找不到符合我需求的东西。我们需要为我们的应用程序创建会话超时(简单),但我们还需要一条警告消息,以便在会话超时发生前x分钟显示。

我已使用the activerecord_session gem设置了我的应用,并完成了必要的配置更改。我可以这样写:

before_action :determine_if_session_timed_out
ApplicationController中的

。我这样做的主要担心是数据库命中以及看起来应该有一个rails方式来实现它的事实,类似于上面链接的gem如何 expire_after:xx分钟,但是警告。

我的两个问题是 - 有没有人看过任何应用程序:

  • 有一个内置的rails会话方式在会话即将结束时显示警告吗?
  • 会话超时后自动重定向?看起来该页面没有与上述gem的expire_after实现重定向。它保持在同一页面上,直到调用另一个操作然后重定向。

1 个答案:

答案 0 :(得分:0)

您的应用程序中的Ajax请求可以通过这段代码捕获。

 $(document).ajaxError(function(e, error) {   switch(error.status) {
     case 401: {
       // page redirect unauthorized access.
       location.reload();
       alert(xhr.responseText);
     }   }

您可以使用jquery(https://codedecoder.wordpress.com/2014/05/01/jquery-inactivity-warning-logout-timer-setinterval-clearinterval/

查看此方法