在iphone本机邮件客户端的preheader中编码问题

时间:2014-09-10 14:18:46

标签: iphone email encoding

我在iPhone 5的预读器中遇到特殊字符的问题。当我发送下面显示的电子邮件(从hotmail webclient获取的代码和标题)时,它显示主题和正文本身的特殊字符(æøå)正确然而,当它显示在预告器中时显示?所以对编码有一些错误的解释。

仅当使用本机邮件客户端打开iPhone中的电子邮件(使用iphone 5测试)并且仅在链接到hotmail帐户时才会出现此问题。如果它被发送到任何其他帐户,例如gmail并在同一客户端中打开,则它被正确呈现。问题已在三个不同的iPhone上重现(其中两个运行7.1.2我不知道最后一个运行的是什么)。

在此处显示的示例中,字符是html实体,在其他测试中,我尝试使用具有相同结果的实际字符。我也试过没有元标题,结果仍然相同。

这个例子就像我可以做到的那样基本,我已经用更真实的电子邮件进行了测试,并且遇到了完全相同的问题。

是否有其他人看过类似问题,或者有人知道会导致此问题的原因吗?

Subject: =?utf-8?B?w6bDuMOl?=
Content-Type: multipart/mixed; 
    boundary="----=_Part_434_1665025495.1410355480247"
------=_Part_434_1665025495.1410355480247
Content-Type: multipart/alternative; 
    boundary="----=_Part_435_224090408.1410355480247"

------=_Part_435_224090408.1410355480247
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable

=E6=F8=E5 ABC Webcopy text =09
[image]
Header =09
text =09
[image]
Header =09
text =09
[image]
Text =09
Unsubscribe text =09
------=_Part_435_224090408.1410355480247
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd" encoding="UTF-8">
<html encoding="UTF-8">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta name="viewport" content="width=device-width">
  <meta name="format-detection" content="telephone=no">
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
<body>
<div>
&#230;&#248;&#229; ABC Webcopy text
</div>
</html>
------=_Part_435_224090408.1410355480247--

------=_Part_434_1665025495.1410355480247--

1 个答案:

答案 0 :(得分:1)

终于明白了。

preheader取自text / plain版本而不是html版本,text / plain版本编码为iso-8859-1而不是编码头文件为utf-8。更改内容编码标题后,一切都运行良好。