“无限生活”饼干可能吗?

时间:2014-12-22 23:11:20

标签: javascript cookies

我已经在我的实验游戏中使用过一段时间了,我想知道你是否可以将cookie的生命周期设置为无限

目前,我的代码将cookie的有效期限设置为999 999 999天,并在游戏加载时重置有效期限。

但是有一种合法的方式让JavaScript cookie永远存在吗?

3 个答案:

答案 0 :(得分:2)

您可以使用localStorage

除非您运行脚本以清除它或用户决定自己执行此操作,否则它不会过期。

答案 1 :(得分:2)

不,没有。

将Cookie设置为在遥远的将来拥有过期日期是有风险的,如dates beyond January 19th, 2038 may be interpreted incorrectly by some systems。 9999之后的年份也可能导致问题,因为日期解析库通常会假设年份总是四位数。

最好不要将Cookie过期日期设置为未来10年以上。假设您的网站存在,那么大多数用户可能会在Cookie过期之前更换他们的计算机。

答案 2 :(得分:1)

不,原因有几个。首先,没有无限cookie的内置功能。其次,无论您指定的日期如何,用户都可以随时清除其Cookie,因此仍然无法保证。

编辑:评论localStorage,这是一个选项,但你仍然不能保证它会被允许(我不允许在我的浏览器上,虽然我是一个偏执的疯子,也阻止所有非白名单脚本,所以我不是典型的用户),用户仍然可以清除它。