引用打印是否足以使邮件符合 RFC 2822 中提出的行长度限制?

Mne*_*nth 9 email rfc

在 RFC 2822(定义电子邮件)中定义,任何行都不应该超过 78 个字符(不包括 CRLF)并且不得超过 998 个字符。使用带引号的可打印更长的行将被分成更多行,每行以 '=' 结束,直到达到真正的换行符。如果邮件包含超过 78(或 998)个字符的行但使用quoted-printable 编码,是否符合标准?

有一些争论认为这不符合要求,因为接收邮件客户端在解码引用的可打印消息后有更长的行。

编辑:按照 David Cary 提出的方式澄清问题:是的,我的意思是可引用打印的编码邮件应该与引用打印兼容,这意味着行不超过 76 个字符。但是解码的消息可能有比这个限制更长的行。所以我的问题是:在解码引用的可打印文本内容后,实现 RFC 1521 的客户端软件是否应该处理无限长的行?到目前为止,这两个答案都是肯定的(谢谢),但限制是 Netiquette(RFC 1855)不鼓励这样做。但是 Netiquette 甚至将行长度限制为 65 个字符,几乎没有人遵守这个限制。

rua*_*akh 9

肯定是合规的。Quoted-Printable 以及 RFC 的 MIME 系列的其余部分(RFC 2045 到 RFC 2049)的全部意义在于,允许对在电子邮件中无效的数据进行编码。RFC 2822 明确地(并且反复地!)向读者指出这些 RFC,以获取有关如何执行此操作的信息。


Dav*_*ary 3

我不确定你在问什么:

接收邮件客户端在解码引用打印之前发现很长的行

假设发送端的引用可打印编码软件只是引用了不可打印字母,使生成的编码行比原始行长,而没有添加“软换行符”,从而导致编码行比限制长。

这是不符合规定的。

带引号的可打印编码数据行不得超过 76 个字符。为了在不改变编码文本的情况下满足此要求,可以添加软换行符...这些软换行符还允许在行大小有限的环境中编码没有换行符(或包含很长行)的文本,例如“每行 1000 个字符”是 RFC 2821 允许的某些 SMTP 软件的限制。

--维基百科:引用可打印,释义RFC2045第 21 页。

编码的行很短,但接收邮件客户端在解码引用打印后发现长行

这符合 RFC2822 和 RFC2045,并且应该得到所有软件的支持。

然而,一些网络礼仪指南不鼓励创建此类消息,包括RFC 1855 “网络礼仪指南”的第 3 页。