一个多部分的7位MIME消息可以包含8位或二进制类型的子消息吗?



我是MIME新手,我不知道以下情况是否有效:

考虑两个嵌套的MIME消息:顶层消息具有Content-Transfer-Encoding: 7bit

顶层消息的正文是一个嵌套的MIME消息,具有Content-Transfer-Encoding: binary。内部消息体的行只以LF结尾,而不是以CRLF结尾。

我认为这个消息是无效的,因为7位规则说LF本身是无效的。然而,一位同事争辩说这个消息是有效的,因为内部消息的Content-Transfer-Encoding是二进制的,它对CR LF没有任何限制。

我的观点是,顶层消息的整个主体需要符合其编码(7bit),而不管任何嵌套消息的Content-Transfer-Encoding。

我搜索了网页,试图在MIME规范中找到答案,但没有找到任何似乎可以解决这种特殊情况的东西。

在RFC 2045第6.4节找到答案:

还应该注意,根据定义,如果复合实体具有传输编码值,如"7bit",但包含的其中一个实体具有限制较少的值,例如"8bit",那么外部"7bit"标签是错误的,因为包含了8bit数据,或者内部的"8bit"标签对运输系统因为实际包含的数据是实际的7比较安全。

所以在我的例子中的消息是无效的

最新更新