纯文本的 HTML 电子邮件 MIME 类型

Posted

技术标签:

【中文标题】纯文本的 HTML 电子邮件 MIME 类型【英文标题】:HTML Email MIME-type for plain text 【发布时间】:2012-12-26 07:28:42 【问题描述】:

我有一位客户/朋友正在准备通过机构访问发送电子邮件。他们需要一个包含 html 的包罗万象的文档,以及一个 HTML 文档中电子邮件的纯文本版本。我认为我有一个基本的了解,但有点困惑。我通常使用 Mailchimp 来处理我的电子邮件营销。

所以我们会使用一个普通的html文档

<html>
<head>
<title>Our Email</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
 our html markup

</body>
</html>

但是,是不是在下面的某个地方,我们为纯文本版本声明了一个替代的 mime-type,然后电子邮件客户端选择显示哪个?是否必须将这两者都包装在多部分/混合 mime 类型中?

我知道这可能很简单,但我读过的大部分内容都处理了发送邮件的 php 文件中的 MIME 类型声明,但我们需要在此文档中进行区分。真的只是想知道这应该如何构建。

【问题讨论】:

"在一个 HTML 文档中" 如果包含多部分文档,它不再是 HTML 文档。 “只是想知道这应该如何构建”查看一些随机电子邮件的源代码(Ctrl + u 将在许多客户端中显示电子邮件源) 使用处理多部分/mime 内容的库。不要手动操作。上次我这样做时,我使用了Email::MIME::CreateHTML,它在文档中有一个示例。不过那不是 PHP。 正确,我说错了。它不会是一个 html 文档,而是一个包含 html 的多部分文档。不过我会看看你的建议。谢谢。 【参考方案1】:

所以这是毫无意义的混乱。该服务暗示用户应该上传一个文档来涵盖两者(这意味着需要在文档中指定 MIME 类型),但事实并非如此,因为他们要求所有内容都属于 html 标记。该服务本身应该提供插入纯文本版本的额外步骤,这是他们正在处理的一个错误。希望这是有道理的,但感谢大家的回复

【讨论】:

以上是关于纯文本的 HTML 电子邮件 MIME 类型的主要内容,如果未能解决你的问题,请参考以下文章

仅发送纯文本电子邮件,正文中包含 Rails mime 部分

使用 MIME::Entity 将 HTML 电子邮件转换为纯文本

带有纯文本部分、html 部分和附件的电子邮件

到 MailMessage 的纯文本 mime 电子邮件

将一些文件附加到 MIME 多部分电子邮件

使用 HTML 电子邮件添加纯文本后备