Cookie个数限制及大小

原创
2012/08/07 16:20
阅读数 2.2W

各浏览器之间对cookie的不同限制:


IE6.0 IE7.0/8.0 Opera FF Safari Chrome
cookie个数   每个域为20个    每个域为50个   每个域为30个   每个域为50个    没有个数限制    每个域为53个
cookie大小 4095个字节 4095个字节 4096个字节 4097个字节 4097个字节 4097个字节

总之,在进行页面cookie操作的时候,应该尽量保证cookie个数小于20个,总大小 小于4KB

虽知Cookie有限制,但未曾详细了解。以下是我遇到的问题,用户莫名其妙的未登录。

        就像问卷调查一样,每一道题都对应有一个或多个答案,有时,一套题太长,如300道题。

         这么长的题很有必要通过Cookie记录下他答题的答案,方便他下次继续答题。

        原来的做法是,以题号为cookie的key,答案为cookie的value。

        结果测试时,有一套长187道的题无法提交!详细跟踪居然是 未登录 是(苦逼的是查了好久答题的逻辑)

以下是我根据问题进行的模拟:



    答题结果是以Ajax方式提交,为了防止提交失败,是在提交成功后才清除Cookie的!
    而在Ajax提交前后,JSESSIONID竟然由 
    “ 63F2103B79B0AEB0307A9CA81D5188FF” 变为 “ A3C497EAA3EF6D56ED29C542328974C2



第一次请求是 的 JSESSIONID=63F2103B79B0AEB0307A9CA81D5188FF

 


由于页面上js的写的Cookie个数过多(内容过长),把服务器写入Cookie中的JSESSIONID给冲没了,而服务器在下一次请求中没能找到JSESSIONID,又重新分配JSESSIONID,故原Session失效,显示未登录!

 

展开阅读全文
打赏
5
9 收藏
分享
加载中
请问,您最后怎么解决的这个问题,当试卷内容过长,cookie的长度大于最大值的时候?
2015/09/11 14:47
回复
举报
您好,请问各浏览器之间对cookie的不同限制的数据是到哪看的呢?手机端浏览器的这些数据怎么看?
2015/04/21 21:03
回复
举报
2014/06/19 15:22
回复
举报
前几天遇到类似的问题
2012/09/05 09:10
回复
举报
好文。
2012/08/07 18:23
回复
举报
更多评论
打赏
5 评论
9 收藏
5
分享
返回顶部
顶部