我正在尝试了解由 System.Net.Mail.MailMessage 生成并由 Microsoft 的 SMTP 服务器生成或使用的 EML 文件。我一直在阅读 RFC 5322 和 5321,并试图理解该格式。

诚然,我看到的大多数 EML 文件都遵循 5322(或 2322 或 822,但我不知道好的 MS 是否遵守标准)中描述的消息格式。但是,我无法完全确定文件的顶部部分(X-Sender 和 X-Receiver 行)是否构成 5321 所描述的“信封”。

我想我的问题是:

  1. 该文件中包含 X-Sender/X-Receiver 行(消息内容上方)的部分是否有文档?
  2. 本节中是否还有其他“命令”?
  3. 这是一个全面的“标准”吗?IE。我可以期望由 System.Net.Mail.MailMessage 生成的 EML 文件在任何标准 SMTP 服务器中都能正确解析吗?
有帮助吗?

解决方案

不,没有任何文档。这仅由 IIS SMTP 服务完成,据我所知,没有任何其他命令。

但是,电子邮件仍然符合 RFC2822。它只是在消息前面添加一些仍然符合 RFC 标准但被 IIS SMTP 服务识别的 X 标头。

IIS SMTP 服务将使用 X-Sender 值作为 SMTP MAIL FROM 值,并使用 X-Receiver 作为 RCPT TO 值。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top