当会话结束时,Ruby on rails不清除浏览器缓存



我正在使用设计gem来处理我的网站的登录/注销。在客户端,我使用AngularJS缓存是DSCacheFactory。

我有一个关于浏览器缓存或angularJS缓存的问题。当会话结束时,缓存仍然保存旧值。

的例子:

  1. 登录用户A
  2. 注销用户A
  3. 登录用户B网站显示用户a

我期望用户B登录后网站显示用户B

Angular的DSCacheFactory只会在浏览器缓存过期时清除它们。

如何在登录用户B(会话结束)后清除DSCacheFactory用户A

我知道这篇文章是旧的,但为了将来参考,如果有人需要解决所描述的问题。

您必须检查用户当前是否使用某些帐户登录,并且在新登录尝试时仅使先前的会话无效。

如果你重写设计::SessionsController和创建操作与该代码,你应该注意到预期的结果。它可以在angular的设计库

中正常工作。https://github.com/cloudspace/angular_devise

 def create
    if user_signed_in? && params[:user].present?
          sign_out(current_user)
    end
    super
  end

最新更新