使用 SMTP 时,X-Priority 与优先级 headers 之间有什么区别?

What is the difference between X-Priority vs Priority headers when working with SMTP?

我正在使用 MailKit 作为 SMTP 客户端来发送电子邮件。

我看到有两个属性XMessagePriority and MessagePriority

这两者有什么区别,一个会覆盖另一个吗?

您会在电子邮件世界中发现的一件事是到处都有遗留的点点滴滴。

这是其中之一。

最初的“电子邮件”规范没有指定 header 来指定消息的优先级,因此一些邮件客户端开始使用 non-standard header 称为 X-Priority(non-standard header 总是以 X- 开头)。 (注意:Microsoft 产品开始使用 X-MSMail-Priority。这里有一些相关信息:https://docs.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcmail/2bb19f1b-b35e-4966-b1cb-1afd044e83ab

后来,许多 X.400 消息属性被映射到消息 headers,包括一个 Priority header,但值与使用的值不同X-Priority header.

一旦某个软件开始做某事并且用户 like/demand 该功能,其他软件就会开始采用这种做某事的方式来竞争。然后,一旦定义了真正的标准,如果它与已经完成的方式不相同,那么现在有 2 种方法可以做同样的事情,而软件必须同时做这两种事情。

您可能会想,“但这不意味着软件必须同时实现两者吗?如果它们都实现了,为什么不放弃旧方法呢?”

因为旧软件仍然存在,只能处理旧的做事方式,所以为了与 可能的旧软件兼容 存在,传统的做事方式依然存在。

(通过“邮件软件”,它不仅包括 Outlook 等邮件客户端或 Exchange 等官方邮件服务器软件 - 它还包括管理员几十年前编写的自动化 shell 脚本,这些脚本可能仍然 运行 因为即使知道任何 应该 更新,也没有人费心去更新它们。

does one override the other?

是的。不行,要看收邮件软件的实现。