HTTP 1.1标头值的格式是什么?

时间:2018-05-01 19:01:38

标签: http http-headers rfc http-protocols abnf

我阅读了rfc7230第3.2节。删除过时的规则后,有关标题字段的规范是:

header-field   = field-name ":" OWS field-value OWS
field-name     = token
field-value    = *field-content
field-content  = field-vchar [ 1*( SP / HTAB ) field-vchar ]
field-vchar    = VCHAR
VCHAR          = %x21-7E; visible (printing) characters

我对field-content的定义感到困惑。它似乎匹配1或2 VCHAR s,中间有任意数量的空格,但在field-content匹配后它将与其他空格不匹配。

例如,对于name:a<sp>b<sp>cfield-name将匹配name,但field-content将匹配a<sp>b,然后下一个<sp>不能与另一个field-content匹配,因此此标头无效。

但是,name:a<sp>bc<sp>d有效,因为field-contenta<sp>bc<sp>d有两个匹配。

我认为这是不一致的。这是故意还是我误解了什么?

0 个答案:

没有答案