【问题标题】:Is the "Message ID" Email Header unique for each recipient?每个收件人的“邮件 ID”电子邮件标题是否唯一?
【发布时间】:2010-10-24 06:57:21
【问题描述】:

电子邮件的 Message ID 标头有多独特?如果我将电子邮件发送给两个人,那么两个人的消息 ID 是否相同?还是会有所不同?

(这是假设没有人做任何有趣的事情。我知道对于垃圾邮件,所有规则都会消失......)

【问题讨论】:

    标签: email rfc5322


    【解决方案1】:

    根据RFC2822 - Internet Message Format,简短的回答是“消息ID应该对于消息的每个实例是唯一的”;但是,MESSAGE-ID 字段被视为可选,如何创建 MESSAGE-ID 字段取决于服务器。引用如下:

    “Message-ID:”字段提供了一个唯一的消息标识符,它引用了特定消息的特定版本。消息标识符的唯一性由生成它的主机保证(见下文)。此消息标识符旨在为机器可读且不一定对人类有意义。消息标识符恰好与特定消息的一个实例有关;对消息的后续修订都会收到新的消息标识符。注意:消息“更改”的情况很多,但这些更改并不构成该消息的新实例,因此该消息不会获得新的消息标识符。例如,当消息被引入传输系统时,它们通常带有附加的头字段,例如跟踪字段(在第 3.6.7 节中描述)和重新发送字段(在第 3.6.6 节中描述)。添加此类标头字段不会更改消息的身份,因此保留原始的“Message-ID:”字段。在所有情况下,决定“Message-ID:”字段是否改变的是消息的发送者希望传达的含义(即,这是同一条消息还是不同的消息),而不是任何特定的句法消息中出现(或未出现)的差异。

    【讨论】:

    • 当您说邮件的每个“实例”时,您是说每个收件人都会有不同的邮件 ID?
    • @james.garriss:如果您在 To 或 Cc 标头中包含某人,则他们“打算”获得相同的消息。可以说,如果您密送某人,情况并非如此。我希望所有 to/cc'd 收件人都能获得相同的消息 ID,如果他们没有,则认为这是一个错误。副手我不知道我在密件抄送鸿沟的哪个位置。
    【解决方案2】:

    通常,所有收件人都会收到完全相同的消息,包括正文和标头,但在途中添加的标头除外(例如:“已接收”标头)。 Message-ID 标头由发件人生成,因此所有收件人都应该看到相同的 Message-ID。

    【讨论】:

    • 示例:如果您订阅了两个列表并且有人交叉发布了一条消息,您可能会收到两条带有一个 Message-ID 的消息。一些电子邮件客户端会同时显示两者。更高级的客户端(例如 Apple Mail)旨在将一封邮件的多个副本显示为一个。
    • 是的,该死的 RFC……人们真正想要的是每条消息的 id,而不是每个实例。
    • 这可能是真的,但发件人不需要生成 Message-ID,而且它们通常不生成(例如大多数 Web 应用程序不生成)。在大多数情况下,消息 ID 由发送消息的第一个 MTA 生成。此外,在跟踪可送达性等的现代时代,为每封发出的电子邮件生成一个唯一的发件人地址是很常见的,以帮助识别哪个收件人与可能发生的任何退回邮件相关联,或者识别为垃圾邮件(出现在 DSPAM 报告中)等。
    【解决方案3】:

    对于群发邮件,最好是每封邮件都是唯一的,邮件 ID 可能是您从垃圾邮件通知或退回邮件中获得的唯一信息,因此对于每封邮件它应该是唯一的。

    【讨论】:

      猜你喜欢
      • 2015-03-02
      • 1970-01-01
      • 1970-01-01
      • 2019-06-22
      • 2012-12-25
      • 2016-02-08
      • 1970-01-01
      • 1970-01-01
      • 2018-04-17
      相关资源
      最近更新 更多