0

我正在开发一个具有用户登录功能的 Rails 应用程序。

我在浏览器的 cookie 中使用auth_token来识别会话中的用户。

但似乎,每次关闭浏览器,使用自动登录;并且auth_token仍然存在。

这是我在代码中所做的:

if login_params[:remember_me] == "1"
    cookies.permanent[:auth_token] = user.auth_token
  else
    cookies[:auth_token] = user.auth_token
  end

我认为,当未选中“remember_me”时,此auth_token 会在浏览器重新启动后过期。

我使用“web developer”来检查 cookie,它显示auth_token在会话结束时过期。

既然它在会话结束时过期,为什么我重新启动浏览器后它仍然存在?

4

1 回答 1

1

您应该在设置 cookie 时手动设置过期时间。我发现它对我来说是一种常见的方法,因为它似乎是唯一可靠的方法。

我会将其设置为在创建后 6 到 10 小时内到期。

于 2013-06-27T16:05:12.023 回答