是否允许在mime头字段名称和':'分隔符之间使用空格

Thi*_*ran 6 whitespace mime header http

在mime标题内,标题字段名称和':'分隔符之间是否允许空格?例如,是:

Content-Type: <value>
Run Code Online (Sandbox Code Playgroud)

Content-Type  : <value>
Run Code Online (Sandbox Code Playgroud)

当量?

另外,你能提供一个指向mime标准的指针吗?我检查了一些,但没有找到它.

谢谢

EML*_*EML 7

取决于你所说的“允许”是什么意思。RFC 2822(废弃了 1982 RFC822)和5322(废弃了 2822)明确禁止在字段名称和冒号之间插入 WS(顺便说一句,这些不是“MIME”标准)。请注意,这:不是令牌,仅作为字段名称的一部分引用,例如:

from = "From:" mailbox-list CRLF
Run Code Online (Sandbox Code Playgroud)

然而,古老的 RFC822确实在这里留出了空间,而较新的 RFC 则声明过时的语法“必须由一致的接收者接受和解析”。From:例如,过时的标头定义是

obs-from = "From" *WSP ":" mailbox-list CRLF
Run Code Online (Sandbox Code Playgroud)

第 4 节介绍过时的语法。我实际上不允许在我自己的接收器中使用过时的语法,而且我从来没有遇到过问题。


jra*_*jav 4

目前尚不完全清楚标准是否允许这样做。但是,实现在处理标头字段名称和冒号之间的空格的方式上有所不同。如果可以的话,我强烈建议避免出现空格。

RFC供参考这篇有点老的文章讨论了 HTTP 标头(一个类似的标准)的问题

  • 感谢您对文档的指点。它明确指出允许使用空格。**3.1.4。结构化字段主体为了帮助创建和读取结构化字段,允许在词汇标记之间自由插入线性空白(允许通过包含 CRLF 进行折叠)。** (4认同)