Web浏览器的Cookie密钥的最大大小是多少?


300

Web浏览器的Cookie密钥的最大大小是多少?

我知道Cookie的最大大小为4KB,但是密钥也有限制吗?

Answers:


359

您所了解的4K限制适用于整个Cookie,包括名称,值,有效期等。如果要支持大多数浏览器,建议将名称保留在4000字节以下,并将Cookie的整体大小保留在4093字节以下。

要注意的一件事:如果名称太大,则无法删除cookie(至少在JavaScript中)。通过更新Cookie并将其设置为过期来删除Cookie。如果名称太大(例如4090字节),我发现无法设置有效期限。我只是出于兴趣而调查了此内容,并不是说我打算有那么大的名字。

要了解更多信息,这里是常见浏览器的“ 浏览器Cookie限制 ”。


虽然关于这个问题,如果你想支持大多数浏览器,然后不超过每50块域饼干,和每个域4093个字节。也就是说,所有cookie的大小不应超过4093字节。

这意味着您可以拥有1个4093字节的cookie,或2个2045字节的cookie,等等。


由于IE7,我曾经说4095个字节,但是现在Mobile Safari附带4096个字节,每个cookie的开销为3个字节,因此最大为4093个字节。


14
4K限制是指特定域下的所有cookie-因此,达到此限制后,您将可能无法创建新的cookie。
ulkas 2013年

6
@ulkas:我现在已经添加了。一旦达到限制,我已经在许多浏览器中观察到可以创建新的cookie,但是它将删除大量现有的cookie。
2013年

1
注意:RFC 2965已过时,并由RFC 6265取代。“限制”部分在很大程度上未更改(请参阅:tools.ietf.org/html/rfc6265#section-6.1),但是RFC 6265现在是规范的来源。
Jim OHalloran

107

实际上,RFC 2965是定义cookie的工作方式的文档,它指定cookie的键或值的大小不应超过最大长度,并鼓励实现支持任意大的 cookie。每个浏览器的实现最大值一定会有所不同,因此请查阅各个浏览器文档。

请参阅RFC第5.3节“实施限制” 。


13
像往常一样,“规格”和“真实世界”似乎完全不同。因为cookie是随每个http请求发送的,所以实际上有限制是一件好事。
BenSwayne

3
如果实际上存在限制,那将是一个非常无用的规范!不过,这是“正确的”答案!
有限赎罪

3
我不明白为什么浏览器选择不遵循此规范。当已经存在诸如localStorage之类的东西时,没有理由不能将超过4KB(不是很多)的数据转储到cookie中。
威廉

1
注意:RFC 2965已过时,并由RFC 6265取代。“限制”部分在很大程度上未更改(请参阅:tools.ietf.org/html/rfc6265#section-6.1),但是RFC 6265现在是规范的来源。
Jim OHalloran

42

在自己测试了几个浏览器并使用Browser Shots之后,我编译了以下列表

在此处输入图片说明


3
在2017年2月18日回答,哈哈,但版本太旧了。
艾哈迈尔·普拉芬

3
@AjmalPraveen那是因为此答案是从此站点复制的(尽管您说的是旧版本)。一个消息源会很好,所以有兴趣的人可以看看一个最新的消息
Robby Groot

4
确切的表已更新,可以在browsercookielimits.squawky.net中找到
gskema,

39

如果应用规范允许,您也可以使用Web存储(它支持IE8 +)。

它可以使用5M(大多数浏览器)或10M(IE)的内存。

Web存储(第二版) ”是API,“ HTML5本地存储 ”是快速入门。


4
在这里可能应该注意,使用Web存储的一个警告是,没有解决方法,存储在Web存储中的数据只能在HTTP或HTTPS上存储/从HTTP或HTTPS访问,而不能在它们之间共享(即使对于同一站点)。
ilasno 2014年

2
@ilasno Afaik传统的cookie存在相同的限制。
史蒂夫·米德利

最重要的警告不是Web存储,而是只能从浏览器而非服务器访问会话存储和本地存储。在其中任何一个和cookie(在浏览器和服务器上均可读取)之间进行选择时,绝对是要考虑的事情。
Vadorequest

16

cookie键(用于标识会话)和cookie是同一事物,只是使用方式不同。因此限制将是相同的。根据Microsoft的4096字节。

MSDN

Cookie通常限制为4096个字节,并且每个站点最多只能存储20个Cookie。通过将单个Cookie与子键一起使用,您可以在分配给您的网站的那20个Cookie中使用较少的cookie。此外,单个cookie会占用大约50个字符的开销(到期信息等),以及您存储在其中的值的长度,所有这些都计入4096字节的限制。如果存储五个子项而不是五个单独的cookie,则可以节省单独的cookie的开销,并且可以节省大约200个字节。


7
顺便说一句,仅因为您有大约4KB的浏览器cookie存储空间就可以使用,所以应该认真考虑这是否是一个好主意。
2009年

您能否确定每个域/站点的Cookie数量是否不能超过20个?还是现在增加了?
突变

2

并非完全完全是对原始问题的直接答案,但是与好奇心快速尝试以可视方式了解其cookie信息存储计划而无需实施复杂的限制器算法有关,此字符串为4096个ASCII字符字节:

"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmn"

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.