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

use*_*480 286 browser cookies

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

我知道cookie的最大大小是4KB,但密钥是否也有限制?

Iai*_*ain 344

您阅读的4K限制是针对整个cookie,包括名称,值,到期日期等.如果您想支持大多数浏览器,我建议将名称保持在4000字节以下,并将整体cookie大小保持在4093字节以下.

有一点需要注意:如果名称太大,则无法删除cookie(至少在JavaScript中).通过更新并将其设置为过期来删除cookie.如果名称太大,比如4090字节,我发现我无法设置到期日期.我只关注这个问题,而不是我计划有一个很大的名字.

要了解更多信息,请参阅常见浏览器的" 浏览器Cookie限制 ".


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

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


由于IE7,我曾经说过4095字节,但是现在Mobile Safari有4096字节,每个cookie有3字节的开销,所以最多4093字节.

  • 4K限制是指特定域下的所有cookie - 因此,当达到此限制时,您可能无法创建新的cookie. (13认同)
  • @ulkas:我现在补充说.一旦达到限制,我已经在许多浏览器中观察到您可以创建新的cookie,但它将删除一堆现有的cookie. (6认同)

Joh*_*lla 105

实际上,RFC 2965(定义cookie如何工作的文档)指定不应该有cookie的密钥或值大小的最大长度,并鼓励实现支持任意大的 cookie.每个浏览器的实现最大值必然不同,因此请查阅单个浏览器文档.

请参阅RFC第5.3节"实施限制" .

  • 像往常一样,"规范"和"现实世界"似乎完全不同.因为cookie是随着每个http请求发送的,所以实际上是有限的. (13认同)
  • 如果实际存在限制,这是一个相当无用的规范!不过,这是"正确的"答案! (3认同)
  • 我不明白为什么浏览器选择不遵循此规范.当localStorage之类的东西已经存在时,我没有理由不能将超过4KB(不是那么多)转储到cookie中. (3认同)
  • 注意:RFC 2965 已过时并由 RFC 6265 取代。限制部分基本没有变化(请参阅:https://tools.ietf.org/html/rfc6265#section-6.1),但 RFC 6265 现在是规范来源。 (2认同)

Mic*_*ael 39

如果应用程序规范允许您(它支持IE8 +),您也可以使用网络存储.

它拥有5M(大多数浏览器)或10M(IE)的内存.

" Web存储(第二版) "是API," HTML5本地存储 "是一个快速入门.

  • 这里应该注意的是,使用Web存储的一个警告是,如果没有解决方法,存储在Web存储中的数据只能存储在HTTP或HTTPS上,而不能在它们之间共享(即使对于同一站点). (4认同)
  • @ilasno Afaik传统的cookie存在同样的限制. (2认同)
  • 最重要的警告是,与 Web 存储不同,会话存储和本地存储只能从浏览器访问,而不能从服务器访问。在其中任何一个和 cookie 之间进行选择时,这绝对是需要考虑的事情,因为它们在浏览器和服务器上都是可读的。 (2认同)

Beh*_*adi 38

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

在此输入图像描述

  • 这个确切的表格已更新,可从http://browsercookielimits.squawky.net/获取. (4认同)
  • 在18-02-2017大声笑回答,但版本已经很久了. (2认同)
  • @AjmalPraveen那是因为此答案是从[此站点](http://browsercookielimits.squawky.net/)复制的(尽管您说的是旧版本)。一个来源会很好,所以有兴趣的人可以查看一个最新的来源 (2认同)

sta*_*r83 21

不完全是对原始问题的完全直接回答,但与那些在不实施复杂限制器算法的情况下快速尝试直观地了解其 cookie 信息存储规划的好奇者相关,该字符串是 4096 个 ASCII 字符字节:

"abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmn"

  • 当我正要了解 4KB 可以存储多少个字符时,这个答案出现了,让我很开心!这是与这个问题相关的[另一个答案](/sf/answers/287024321/)。 (5认同)

cgr*_*eno 15

Cookie密钥(用于标识会话)和cookie是以不同方式使用的相同内容.所以限制是一样的.根据微软的4096字节.

MSDN

cookie通常限制为4096字节,每个站点不能存储超过20个cookie.通过将单个cookie与子键一起使用,您可以使用较少的20个cookie来分配您的站点.此外,单个cookie占用大约50个字符用于开销(到期信息等),加上存储在其中的值的长度,所有这些都计入4096字节的限制.如果存储五个子密钥而不是五个单独的cookie,则可以节省单独cookie的开销,并可以节省大约200个字节.

  • 顺便说一句,仅仅因为你有大约4KB的浏览器cookie存储与你玩,你应该认真考虑是否这是一个好主意. (7认同)
  • 不能同意的更多! (2认同)