通常,浏览器将cookie分组到单个Cookie标头中,例如:
Cookie: a=1; b=2
Run Code Online (Sandbox Code Playgroud)
标准是否允许将这些标题作为单独的标题发送,例如:
Cookie: a=1
Cookie: b=2
Run Code Online (Sandbox Code Playgroud)
或者他们总是必须在同一条线上?
Jam*_*ong 118
在查找此主题的详细信息时,可以查看此页面.从A报价HTTP State Management Mechanism,RFC 6265应该让事情更清晰:
5.4.Cookie标头
当用户代理生成HTTP请求时,用户代理不得附加多个Cookie头字段.
它看起来像使用多个Cookie头时,事实上,禁止!
小智 18
它现在允许在HTTP/2(RFC 7540)中指定:
8.1.2.5. Compressing the Cookie Header Field
The Cookie header field [COOKIE] uses a semi-colon (";") to delimit
cookie-pairs (or "crumbs"). This header field doesn't follow the
list construction rules in HTTP (see [RFC7230], Section 3.2.2), which
prevents cookie-pairs from being separated into different name-value
pairs. This can significantly reduce compression efficiency as
individual cookie-pairs are updated.
To allow for better compression efficiency, the Cookie header field
MAY be split into separate header fields, each with one or more
cookie-pairs. If there are multiple Cookie header fields after
decompression, these MUST be concatenated into a single octet string
using the two-octet delimiter of 0x3B, 0x20 (the ASCII string "; ")
before being passed into a non-HTTP/2 context, such as an HTTP/1.1
connection, or a generic HTTP server application.
Therefore, the following two lists of Cookie header fields are
semantically equivalent.
cookie: a=b; c=d; e=f
cookie: a=b
cookie: c=d
cookie: e=f
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42512 次 |
| 最近记录: |