我想设置一个永不过期的 cookie。这甚至可能吗?
document.cookie = "name=value; expires=date; path=path;domain=domain; secure";
我不想让日期变得非常大,我只是想知道 cookie 上的 expires 参数是否有一个值告诉它永不过期。
谢谢。
我想设置一个永不过期的 cookie。这甚至可能吗?
document.cookie = "name=value; expires=date; path=path;domain=domain; secure";
我不想让日期变得非常大,我只是想知道 cookie 上的 expires 参数是否有一个值告诉它永不过期。
谢谢。
不。那是做不到的。最好的“方法”就是让到期日期像 2100 年一样。
没有你想要的语法。不设置 expires 会导致 cookie 在会话结束时过期。唯一的选择是选择一些任意大的值。请注意,某些浏览器的日期超过 2038 年(当 unix 纪元时间超过 32 位整数时)存在问题。
您可以按照Mozilla 文档中的示例进行操作:
document.cookie = "someCookieName=true; expires=Fri, 31 Dec 9999 23:59:59 GMT";
聚苯乙烯
当然,如果人类在 10000 年的第一分钟仍然使用你的代码,就会有问题:)
所有 cookie 根据 cookie规范过期,您可以设置的最大值为
2^31 - 1 = 2147483647 = 2038-01-19 04:14:07
所以最大 cookie 寿命是
$.cookie('subscripted_24', true, { expires: 2147483647 });
您可能会在一个月或某天的到期日设置 cookie,然后每次用户再次访问该网站时重新分配 cookie