只是想知道IE,FF,Chrome和Safari允许的Cookie大小和数量是多少。每个主机允许的数量和每个cookie的大小是多少?如果您尝试使用Javascript存储大于最大大小的cookie,会发生什么?
答案 0 :(得分:6)
因浏览器而异。最大的限制是IE6,它只能接受20个域cookie(所有其他现代浏览器[FF3 +,IE7 / 8,Safair 4/5,Chrome]可以接受更多)。一旦IE6达到它的20个cookie限制,它会随机覆盖一个较旧的cookie,这是一个主要的问题,因为你永远不知道哪个被删除了。
如果您喜欢运行某些特定测试 - 请访问此博客文章并尝试使用作者测试脚本。
http://www.ghacks.net/2008/08/16/browser-cookie-limits/
希望有所帮助。
答案 1 :(得分:3)
AFAIK您可以设置的cookie数量为每个域20个或最多300个,并且每个cookie的上限通常限制为4k。
RFC for cookies(第6.3节)包含您要查找的大部分信息。
就设置cookie larger than the recommended size而言,我建议一些浏览器会以不同的方式处理,但考虑到最低公分母(IE6),我建议你考虑不同的形式数据持久性,如果你需要存储那么多数据。
答案 2 :(得分:2)
我今天调查了这个,如果你想支持大多数浏览器,那么每个域不要超过30个cookie,每个域不超过4095个字节(即所有cookie的总大小< = 4095字节)。
至于超出限制时会发生什么,这取决于每个浏览器以及您超出的限制。例如,在Chrome 8中,当我添加Cookie 181时,会删除20个Cookie。同样在chrome 8中,当我添加一个5000字节的cookie时,它会被截断为4096字节。我怀疑截断是处理超大cookie的标准方法。
要了解更多信息,请点击此处test page and results。