代码之家  ›  专栏  ›  技术社区  ›  Chris Roberts

发送HTML电子邮件时出现“引用的可打印行长度超过76个字符”警告

  •  6
  • Chris Roberts  · 技术社区  · 18 年前

    当我测试电子邮件时,它会被我的垃圾邮件过滤器吃掉。它得分不好的原因之一是以下问题:

    MIME_QP_LONG_LINE  RAW: Quoted-printable line longer than 76 chars

    我查过电子邮件的来源,我把每一行超过76个字符分成两行,中间有一个CR+LF,但这并没有解决问题。

    谁能给我指出正确的方向吗?

    谢谢

    2 回复  |  直到 18 年前
        1
  •  5
  •   pilif    18 年前

    Quoted printable将8位字符扩展为“={HEX Code}”,从而使消息更长。也许你只是达到了这个极限?

    或者您只需使用Base64对电子邮件进行编码—所有邮件客户端都可以处理该问题。

        2
  •  2
  •   kymg    16 年前

    这是System.Net.Mail.MailMessage中引用的可打印编码实现中的一个错误,该编码已经存在很长时间了,但现在显然已经修复,从.Net 4 Beta 2开始。

    http://connect.microsoft.com/VisualStudio/feedback/details/156052/mailmessage-body-encoding-quoted-printable-violates-rfcs-soft-line-breaks-requirements

    一种解决方法是改用Base64编码(尽管以非人类可读的编码方式发送纯文本MIME部分不是一种好的做法)。要求类的用户在发送消息之前手动拆分消息行不是一个通用的解决方案,因为修改后的消息不是他们想要发送的消息(例如,它可能包含一个长度超过76个字符的链接,因此无法拆分)。Quoted Printable可以处理行长度超过76个字符的消息 之前