multipart/mixed 不适用于雷鸟和 hotmail 但 Gmail

Posted

技术标签:

【中文标题】multipart/mixed 不适用于雷鸟和 hotmail 但 Gmail【英文标题】:multipart/mixed not working in thunderbird and hotmail but Gmail 【发布时间】:2017-04-06 22:12:19 【问题描述】:

以下是我的雷鸟收到的电子邮件的源代码。 我找不到任何语法错误,它在 gmail 中运行良好。 但是对于hotmail和thunderbird,附件已损坏,内容为空白...... 我已经尝试了很长时间来解决这个问题。有什么帮助吗?

Subject: MySubject
From: testing@test.com
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="02f05ee7d40220f0ebab50ef7440ca55"
Content-Transfer-Encoding: 7bit
Cc: cc@cc.com
Message-Id: <20161123030114.97B04DCD682@server.com>
Date: Wed, 23 Nov 2016 11:01:14 +0800 (MYT)


--02f05ee7d40220f0ebab50ef7440ca55
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
<p>Test</p>

--02f05ee7d40220f0ebab50ef7440ca55
Content-Type: application/pdf; name="Attachment.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Attachment.pdf"
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
--02f05ee7d40220f0ebab50ef7440ca55--

【问题讨论】:

在部分标题和内容之间的空行似乎丢失了。 整体 CTE 7bit 不适用于 mime 部分 CTE 8bit。 @mkl 天哪,你是我的救星!!我认为您应该在下面写下您的答案,让我选择它作为其他人方便的最佳答案。非常感谢!! 【参考方案1】:

感谢@mkl 的回答。 经过一些修改,我的代码已经工作了!!

"There must be a empty line between header and content." 是重点

Subject: MySubject
From: testing@test.com
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="02f05ee7d40220f0ebab50ef7440ca55"
Content-Transfer-Encoding: 7bit
Cc: cc@cc.com
Message-Id: <20161123030114.97B04DCD682@server.com>
Date: Wed, 23 Nov 2016 11:01:14 +0800 (MYT)


--02f05ee7d40220f0ebab50ef7440ca55
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

<p>Test</p>

--02f05ee7d40220f0ebab50ef7440ca55
Content-Type: application/pdf; name="Attachment.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Attachment.pdf"

PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
PDF ATTACHMENT CODES HERE
--02f05ee7d40220f0ebab50ef7440ca55--

【讨论】:

如上所述,整体 CTE 7bit 与 mime 部分 CTE 8bit 相结合意味着从长远来看是自找麻烦..

以上是关于multipart/mixed 不适用于雷鸟和 hotmail 但 Gmail的主要内容,如果未能解决你的问题,请参考以下文章

使用 Email::MIME 和 multipart/mixed with subparts 解析电子邮件

如何使用 python 解析 multipart/x-mixed-replace 消息

multipart/x-mixed-replace 是不是等待客户端请求?

批处理请求必须具有“Content-Type”标头/“multipart/mixed”作为媒体类型

JSF 2.2 h:inputFile 不适用于漂亮的面孔[重复]

使用 Email::MIME 和 multipart/signed 解析电子邮件