如何让authlogic使用Rails会话而不是自己的cookie?
我希望authogic永远不会设置user_credentials
cookie,只使用标准的Rails会话cookie。
我看到Session
包含在Cookies
之后的Authlogic::Session::Session::Base
。 如果我登录我的应用程序然后删除user_credentials
cookie,我仍然保持登录状态。所以显然authlogic是在两个地方存储凭据并检查这两个地方? 或者忽略cookie但仍然设置它? 如何让它永远不会设置或引用user_credentials
cookie?
根据我的问题的答案…
如何删除供应商代码插入的回调?
…这个问题的答案是在我的UserSession定义之上执行此操作:
Authlogic::Session::Base.after_save.delete_if{ |callback| callback.method == :save_cookie } class UserSession < Authlogic::Session::Base end
如果您使用vendored authlogic,那么您可以通过在“authlogic-2.1.5 / lib / authlogic / session / cookies.rb”上使用和更改save_cookie方法上的一些代码来阻止user_credentials cookie。