在电子邮件中,.eml文件的MIME类型是什么?

4

我希望在邮件中附加一个MTA报告(不是未送达的退信),但正确的MIME类型是什么?

我使用以下命令获取完整的MTA报告:

$body = imap_fetchbody($this->Mailbox->stream, $this->header->uid, '', FT_UID);

但是,附加的.eml文件的正确MIME类型是什么?

尝试了message/rfc822,但当您在Thunderbird中打开文件时,弹出窗口为空。也尝试了text/plain,但那样附件就会以纯文本形式打开。我想将附件.eml作为电子邮件打开。

当您收到MTA报告(未交付)时,退回邮件始终作为附件转发

我想将完整的MTA报告+转发的退回邮件附加到新邮件中


我们在工作中使用的(专有)邮件客户端只需设置Content-Type: application/octet-stream; name="xxx.EML" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="xxx.EML",就能够通过双击打开接收到的附件“作为”电子邮件,尽管我不能确定这不是由于已注册的文件扩展名所致。当您在Thunderbird中给自己发送一封包含EML文件的邮件时会发生什么情况 - 是否按预期工作?如果是,请检查该邮件的源代码。 - CBroe
@CBroe,看起来它可以使用application/octet-stream。请创建一个答案 :) - clarkk
3个回答

8

Content-Type: application/octet-stream 应该可以解决问题。


我们公司专有的邮件客户端设置了 Content-Type: application/octet-stream; name="xxx.EML" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="xxx.EML",通过双击能够将接收到的附件“作为”电子邮件再次打开。由于该MIME类型不是具体的类型,我想它会回退到操作系统级别上注册的.eml后缀的文件类型处理程序。


6

message/rfc822 ("封装消息") 能够与 ReactDropzone 一起使用。当拖入一个 .eml 文件时,该字符串被报告为类型。(可能会有所不同。)


2
这也是CLI工具mimetype /path/to/file告诉我的。 - Martin Thoma
希望这是被选中的答案。电子邮件客户端在此方面灵活性太大了。application/octet-stream 用于表示具有字节的通用文件。 - Kat Lim Ruiz
这是正确的答案。 - undefined

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接