从 EML 附件中获取错误的内容类型

Getting wrong contentType from EML attachment

我正在使用 Microsoft Graph 来获取邮件,我最近注意到当电子邮件有 .eml 附件时,有两种情况:

  1. 如果发件人通过下药电子邮件将该电子邮件附加到作曲者,则附件将是项目附件类型。 <-- 我可以处理这种情况

  2. 如果发件人通过单击 "attach file" 附加了一个 .eml 文件,该附件将是一种文件附件。到此为止,我觉得做个文件附件就好了。但是当我尝试获取该附件时,附件内容类型是 application/octet-stream,这是错误的。不应该是message/rfc822吗?使用 application/octet-stream,我无法从我们的服务器创建该附件。

没有错,application/octet-stream只是表示一个generic/unknown二进制文件。来自 RFC 2046 § 4.5.1:

The "octet-stream" subtype is used to indicate that a body contains arbitrary binary data.

您的应用程序可以自行决定如何处理文件。在这种情况下,.eml 只是一个文本文件。您可以简单地获取附件并将​​其视为原始文本。