我有一封multipart/alternative
电子邮件,可以完全适用于Gmail,Yahoo以及我尝试过的任何其他电子邮件......除了Hotmail(以及我认为的任何微软)。
电子邮件在Hotmail上显示为原始文本。
无论我多少时间撞到墙上并对微软发出咒骂,这已成为日常活动,我无法弄清楚为什么它不起作用。你能吗?
如果你想自己尝试一下,这是电子邮件:
接头:
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_Part_18243133_1346573420.1408991447668"
体:
------=_Part_18243133_1346573420.1408991447668
Content-Type: text/plain; charset=UTF-8
Hello world.
------=_Part_18243133_1346573420.1408991447668
Content-Type: text/html; charset=UTF-8
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<p style="margin-top:50px;font-size:9px;">Hello world</p>
</body></html>
------=_Part_18243133_1346573420.1408991447668--
如果您想在服务器上测试它,请使用full code,使用我使用的phpmail或wp_mail()。
更新:这是收到的邮件source。
答案 0 :(得分:2)
可能是复制粘贴到pastbin错误,但是你的eml在分隔符行中包含一个空格。见这里:
--====f230673f9d7c359a81ffebccb88e5d61==
Content-Type: multipart=...<CR><LN>
<SPACE><CR><LN>
^^^^^^^
--====1fdbf23c3658d752511a8dbe74788e30==
如果它不是复制粘贴错误而不是hotmail,则无法识别mime实体标题的结尾。
答案 1 :(得分:1)
您看起来看起来符合RFC2046,因此 应该与所有MUA(包括Hotmail)一起使用。但话说回来,这条消息的结构方式有些不同寻常,而Hotmail可能无法正确处理这样的消息,即使它在RFC范围内也是如此。
构造包含纯文本正文和HTML正文的消息的更常见方式是在标题中指定multipart / mixed,然后创建包含纯文本正文部分和HTML正文的多部分/替代部分部分,使用&#39; subboundaries&#39; (因缺乏更好的术语)将两个身体部位分开。见下文:
邮件标题
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="====f230673f9d7c359a81ffebccb88e5d61=="
讯息正文
--====f230673f9d7c359a81ffebccb88e5d61==
Content-Type: multipart/alternative;
boundary="====1fdbf23c3658d752511a8dbe74788e30=="
--====1fdbf23c3658d752511a8dbe74788e30==
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Hello world.
--====1fdbf23c3658d752511a8dbe74788e30==
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: 7bit
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<p style="margin-top:50px;font-size:9px;">Hello world</p>
</body></html>
--====1fdbf23c3658d752511a8dbe74788e30==--
--====f230673f9d7c359a81ffebccb88e5d61==--