ubuntu的chrome中的RoR会话

时间:2013-05-28 09:18:58

标签: ruby-on-rails ruby

我在ruby-on-rails上遇到会话问题。 使用Chrome(27.0.1453.93)和Ubuntu 12.10时会出现。

这是我的代码:

if remember == '1'
      cookies.permanent.signed[:remember_token] = [user.id, user.salt]
    else
      session[:remember_token] = [user.id, user.salt]
    end

我在没有“记住”的情况下登录,然后我重新启动Chrome(在Ubuntu上),并且会话数据不会丢失,同时重新启动Mozilla会清除会话数据。

你能解释一下这里发生了什么吗?

我希望在两种浏览器中都有相同的行为!

1 个答案:

答案 0 :(得分:1)

这是因为Chrome(在安全方面不正确)在关闭后没有释放会话cookie。有关详细信息,请参阅Chrome doesn't delete session cookies。请注意,如果FireFox崩溃并提供为您“恢复打开的会话”,它将执行类似的操作(再次,错误)。其他流行的浏览器目前似乎没有此问题。

这种不正确的行为不太可能很快修复 - 请参阅http://code.google.com/p/chromium/issues/detail?id=128513