2012-02-27 140 views
5

我正在使用this jquery plugin成功将cookie添加到网站上的jQuery Ajax应用程序。jQuery Cookie持久性

但是,我非常简短的问题是,我怎样才能将cookie设置为无限期存在?

我试图通过将它们长期存储在包含每个用户唯一的数据数组的cookie中来记住用户的偏好设置。

谢谢。

+1

您可以使用localstorage存储您的数据并将其作为cookie随时发送。 – deantoni 2012-02-27 14:48:00

回答

4

您不能将cookie设置为“永不”过期,但您可以做得一样好。

通常我更喜欢将cookies设置为30天,并在用户访问页面时更新它们。只要用户不离开一个月,cookie就是永久的。

1

也许您可以尝试将过期选项设置为:9999。这可能是您的解决方案。

$.cookie('the_cookie', 'the_value', { expires: 9999 }); 

但是没有无限的有效选项。

试着用这些值进行试验。但将它保存为cookies是否是一个好主意?因为如果用户在某些时候删除了Cookie,那么无论如何。您是否考虑将“属性”保存到数据库中?

15

您无法将cookie设置为无限期存在。您通过设置cookie的过期日期来使Cookie持久化,并且由于过期日期必须具有特定的值,即Cookie将过期。

可以使饼干住了一年,例如:

$.cookie('the_cookie', 'the_value', { expires: 365 }); 

你也可以使用一个Date对象为截止日期,但你应该保留日期2038年的这一面,一些系统不支持日期之后的日期。

+0

是的,这是我发现一些谷歌搜索后 - 不幸的是。谢谢 – sisko 2012-02-27 14:53:22