是一封具有不同字符编码的电子邮件,它的标题和正文有效吗?用例:在处理电子邮件时,我应该单独检查它的标题的字符编码,还是检查它的正文是否足够?有人可以指导我如何解决这个问题吗?提前致谢!
电子邮件标题应使用ASCII字符集,如果您希望标题字段具有不同的编码,则需要使用编码的字语法:http://en.wikipedia.org/wiki/MIME#Encoded-Word
只有当传输它的邮件服务器启用了8bit mime时,电子邮件正文才能直接编码为不同的编码(现在每个邮件服务器都应启用它,但不保证),否则你需要用传输编码对主体进行编码(引用 - 可打印的或base64)
字符集在每种情况下都可以是不同的,也就是说,您可以将不同字符集中的每个编码字和每个邮件部分编码在不同的字符集中,甚至也可以使用不同的传输编码.
例如,您可以:
Subject: =?UTF-8?Q?Zg=C5=82oszenie?= //header value in UTF-8 encoded with quoted printable
Run Code Online (Sandbox Code Playgroud)
和身体编码:
Content-Type: text/plain; charset="iso-8859-2"
Content-Transfer-Encoding: base64
WmG/87PmIEfqtmyxIEphvPE=
Run Code Online (Sandbox Code Playgroud)
不同的字符集,不同的转发编码在同一封电子邮件中,没问题.
从经验中我可以告诉你,这样的邮件很常见.更糟糕的是,您可以收到一封电子邮件,其中包含Content-Type标头中的一个字符集以及html body meta标签中的另一个字符集:
Content-Type: text/html; charset="iso-8859-2"
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charser=utf-8">
Run Code Online (Sandbox Code Playgroud)
由您来猜测使用的实际字符集.可能它是meta标签中的那个.
什么也不做.期待一切.不要俘虏.这是斯巴达.
| 归档时间: |
|
| 查看次数: |
1305 次 |
| 最近记录: |