从 multipart/alternative 获取原始内容类型

Posted

技术标签:

【中文标题】从 multipart/alternative 获取原始内容类型【英文标题】:Get original content type from multipart/alternative 【发布时间】:2013-07-09 11:26:05 【问题描述】:

我正在使用 javamail 1.4.7 通过 imap 从 Gmail 中读取邮件。 即使我的内容是简单的纯文本(例如“hello world”),我也会得到 MimeType multipart/alternative。 我有 2 个身体部位,一个具有内容类型 text/plain 另一个具有 text/html。 我的问题是如何确定哪个身体部位是原始的(最初由发件人发送)。 我只想获取原始内容类型的邮件(即,如果邮件内容是纯文本,那么我想获取内容类型为“文本/纯文本”的部分,如果邮件内容具有 html,那么我想获取内容类型为“文本”的部分/html")。

【问题讨论】:

【参考方案1】:

您怎么知道您的邮件程序没有将简单的纯文本消息作为多部分/替代方式发送?

如果您的邮件程序没有发送这两个部分,那么某些邮件服务器正在将原始正文转换为多部分/替代。没有明确的方法可以知道它是否或如何做到这一点。

【讨论】:

是的,你是对的,邮件服务器(Gmail)会转换它。那么 Mime Type multipart/alternative 是 Gmail 特有的吗? 不,multipart/alternative 不是 Gmail 特定的。它由 RFC 2046 定义。

以上是关于从 multipart/alternative 获取原始内容类型的主要内容,如果未能解决你的问题,请参考以下文章

解析“多部分/替代”内容类型

邮件标题和内容验证

在电子邮件正文中嵌入 base64 图像

MIME 电子邮件多部分解析器 [重复]

在 mutt 中使用 python 创建多部分/替代邮件

多部分电子邮件在 Hotmail 之外的任何地方都可以使用