最近我试图设置一个 cookie 以验证 Rails 3.2 应用程序中的会话。
cookie 应该在第二天开始时过期,这样我会强制用户再次登录(强制)
首先,我将应用程序的时区更改为我期望处理的时区:
config.time_zone = 'Caracas'
之后,我按如下方式创建了 cookie:
cookies[:remember_token] = {value: user.remember_token,
expires: 1.day.from_now.beginning_of_day}
cookie 的创建没有任何问题,但过期日期错误。在 Chromium 中,日期设置为今天晚上 19:30(尽管我的机器时区是根据应用程序设置的)。
当我将 cookie 的定义更改为:
cookies[:remember_token] = {value: user.remember_token,
expires: 1.day.from_now}
如果我仅将 cookie 设置为从今天起 1 天,那么过期日期将正确设置为从现在起正好 24 小时。
任何想法为什么 begin_of_date 没有正确设置日期?
提前致谢