如果用户的会话超时,我想将用户重定向到登录页面。如果用户单击我的网页的任何链接,如何将用户重定向到登录页面。链接可以是ajax调用或页面重新加载调用。
答案 0 :(得分:0)
您可以使用控制器中的before_filter功能轻松实现这一目标......
这些过滤器将检查有效会话以及是否过期...将用户重定向到登录页面...还可以检查导轨中的Notifications API
答案 1 :(得分:0)
您应该在控制器中调用before_filter函数。
您需要在控制器中添加此行,例如
Class NAMEsController < ApplicationController
before_filter :authenticate_user!
为此,您需要确保在项目中安装了“device”gem。
(或)
而不是调用before_filter :authenticate_user!
在调用authenticate_user!
的控制器中编写自己的函数。类似的东西:
before_filter :logged_in
private
def logged_in
your_function
authenticate_user!
end
对于ajax调用,你需要自己动手一点。以此为出发点。
before_filter :login_required, :only => [:index]
before_filter(:only => :index) do |controller|
login_required unless controller.request.format.js?
end
你需要做一些自定义测试脚本。这只是一个想法。我不确定它的工作是否完美。