电子邮件主题是否需要html转义?

Sam*_*una 9 email html-email

我将发送一个包含不安全用户输入的代码中的html电子邮件.我注意到,如果我html逃脱主题,GMail将显示转义的内容(所以如果我的主题是"This & That",我清理,因为"This & That"Gmail显示后者).Thunderbird也是如此.假设所有电子邮件客户端都不需要主题html转义是否安全?

Dan*_*ows 9

无需在主题行中编码HTML实体.在HTML主体中进行编码的原因是,如果您使用的是XHTML,因为它派生自XML,则将其视为&保留字符.

但是,电子邮件的主题行不是HTML,XML或XHTML.这只是纯文本.因此,您不需要将&符号编码为&.如果你对它进行编码,因为它没有被解析为HTML,它将显示为已编码.

如果要包含非ASCII字符(例如£),则需要将整个"信封"(包括电子邮件正文)编码为UTF-8.

因此,在代码中,以下内容将显示为:

        | Subject Line |    Body
====================================
&   |    &     |     &       
&       |      &       |     & 
UTF-8 £ |      £       |     £
ASCII £ |     n/a      |    n/a
£ |   £    |     £
Run Code Online (Sandbox Code Playgroud)

注意:Microsoft Office有一个奇怪的UTF-8实现,因此并非所有UTF-8字符都能正常工作.