我必须在2个cookie词典/键控cookie中存储用户偏好隐藏应用程序中每个表单的某些部分。
似乎IE7已经达到了javascript 中cookie 的数量或大小的限制。
我的意思是cookie只能在客户端js上访问,但在我们的asp.net/vb代码隐藏中可以很好地读取。
需要读取这些cookie的值的函数必须在客户端,因为每次函数需要更新cookie时我都无法运行回发。
如何在不触发回发的情况下获取和设置cookie?我考虑过在文本框中存储cookie onload的值,但我不知道什么时候会读回来并更新cookie。
答案 0 :(得分:3)
替换答案,因为上一个答案没有适用,而且评论的结果很长。
根据浏览器的不同,您总共只能获得4 KB的Cookie数据 每个 。
RFC指出浏览器需要支持至少20个cookie(IE确实需要50个),并且需要支持至少4KB。然而,令人遗憾的是,大多数浏览器将4KB视为上限。因此,对于可能“在野外”使用的应用程序,这些cookie中所有数据的总和不应超过4KB。
此外,4KB显然是主观的,因为一些浏览器认为这意味着4095字节。奇怪的是。
无论如何,Chrome和Firefox的当前版本没有这个上限。 IE 9上限为每个域10,234字节,每个cookie 5,117(另一个奇数);然而,Opera和Safari仍然在过去。再说一次,如果您正在测试旧版本的IE,Firefox甚至是Chrome,那么您也会遇到4KB的限制。
就个人而言,我认为如果您的cookie大于4KB,那么您可能会遇到一些设计问题,因为您现在对您所拥有的最小连接施加了更大的压力:浏览器和服务器之间。如果您需要更多数据,那么您可能需要设置本地缓存服务器,将数据嵌入页面中,或者至少重新考虑使用Cookie的内容。
答案 1 :(得分:0)