如何安全地识别DSN(传递状态通知)消息

时间:2010-06-23 14:52:26

标签: email pop3 dsn

我正在从POP3服务器获取电子邮件,我想在常规电子邮件和DSN(传递状态通知)/ NDR(未送达报告/收据)消息之间做出改变。

识别这些消息的最佳/最安全的方法是什么?是否有任何特定的消息标题我应该寻找?

提前致谢!

1 个答案:

答案 0 :(得分:5)

某些邮件服务器实施RFC 3464。这样做通常会生成传递状态通知,其中包含消息头内容类型的多部分/报告和三个组成部分(文本/普通,消息/传递状态和消息/ rfc822)。因此,您可以检测到消息的这些特征并进行相应处理。该消息通常如下所示:

  

发件人:“邮件投放系统”< MAILER-DAEMON@example.com>
  主题:交货状态通知(失败)内容类型:   多/报告;报告类型=递送状态

     

Content-Type:text / plain人类可读的解释   交货状态通知。

     

Content-Type:message / delivery-status结构化机器可读   交货状态通知的原因。

     

Content-Type:message / rfc822原始消息。

对于那些以非结构化格式生成传递状态通知的邮件服务器,可能仍需要通过分析From:和Subject:邮件头的文本来检测其通知。