关于rails cookies消失的原因及解决办法 hastings

本文探讨了在Rails框架中使用Cookies时遇到的问题及解决方法,解释了Cookies的默认生命周期与如何通过代码为其设置自定义期限,确保数据持久性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这段时间在接触rails的cookies,使用例子代码如下

def index

p cookies[:key]

cookies[:key] = "value" 

redirect_to :action => "second_action"

end

def second_action

p cookies[:key]

cookies[:key] = "newvalue"
p cookies[:key]

end

你会发现在使用时一切都是正常的,但当你关闭浏览器并重新访问该方法时你会发现cookies消失了,为什么呢?

根据我的观察发现,原来cookies是有生命周期的,当你直接给cookies赋值而没有给其提供生命周期长短时,默认生命周期长度就是跟session一样的,当浏览器关闭时就结束。

设置生命周期的方法是

cookies[:key] = {:value => "value", exripes => 1.hour.from_now}

时间可以自己设置。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值