我刚刚阅读了 HTTP 标准(拟议标准更准确地说)第 1 部分,并对第 3 节倒数第二段中他们认为的“空白”感到困惑:https://www.rfc-editor.org/rfc/rfc7230#section-3 https://www.rfc-editor.org/rfc/rfc7230#section-3
由于返回 (CRLF) 终止 HTTP 标头,因此可能隐含的唯一空格是0x20
“空间”字符。维基百科列出了另一种空白 ASCII 符号,例如“不间断空格”0xA0
,所以我仍然不理解这个(“空白”)概念。
请帮助我弄清楚它在该标准范围内的真正含义。
您链接到的 RFC 7230 准确定义了标头中的空白:
HTTP-message = start-line
*( header-field CRLF )
CRLF
[ message-body ]
header-field = field-name ":" OWS field-value OWS
field-name = token
field-value = *( field-content / obs-fold )
field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]
field-vchar = VCHAR / obs-text
obs-fold = CRLF 1*( SP / HTAB )
; obsolete line folding
; see Section 3.2.4
obs-text = %x80-FF
OWS = *( SP / HTAB )
; optional whitespace
如你看到的,SP
(空间)和HTAB
(水平制表符)是唯一定义的空白字符。它们定义在RFC 5234 附录 B.1 https://www.rfc-editor.org/rfc/rfc5234#appendix-B.1,RFC 7230 链接到:
HTAB = %x09
; horizontal tab
SP = %x20
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)