我在使用authlogic单一访问令牌访问页面时遇到问题,当超时注销设置为true并设置超时时。
user.rb:
acts_as_authentic do |c|
c.logged_in_timeout = 15.minutes
end
user_session.rb:
logout_on_timeout true
控制器:
def single_access_allowed?
["download_xml"].include?(action_name)
end
如果我尝试使用令牌访问页面/方法,它会直接重定向到我的登录页面。超时注销在打开时有效。
如果我删除超时代码并且在user.rb中只有acts_as_authentic,则单一访问令牌可以正常工作。
我希望能够使用单一访问令牌,以便其他应用程序可以从我的ruby on rails网站上打开一个xml文件。
关于我可能做错了什么以及在哪里修复并使其有效的任何想法?
使用authlogic 3.0.3和rails 3.0.7。
答案 0 :(得分:0)
jgdreyes去年9月27日https://github.com/binarylogic/authlogic/issues/64的回复为我工作:
我继续推进Authlogic的陈旧?这样做的方法 没看到陈旧的请求?如果通过single_access访问?这保持不变 logout_on_timeout的逻辑完好无损。
class UserSession < Authlogic::Session::Base logout_on_timeout true
def stale?
return false if single_access?
super
end
end