我想保存已发送电子邮件的 MessageID,以便稍后在 References: 标头中使用它以促进线程化。
我在创建 MessageID 的 root/django/trunk/django/core/mail.py (第 ~55 行)中看到。
我正在尝试考虑收集此值的最佳方法,而不仅仅是复制/粘贴到新的后端模块并返回它。也许这是最好的方法?
我想保存已发送电子邮件的 MessageID,以便稍后在 References: 标头中使用它以促进线程化。
我在创建 MessageID 的 root/django/trunk/django/core/mail.py (第 ~55 行)中看到。
我正在尝试考虑收集此值的最佳方法,而不仅仅是复制/粘贴到新的后端模块并返回它。也许这是最好的方法?
好的,我看到我正在浏览可悲的旧代码。在调用发送之前,我应该能够调用 django.core.mail.message.make_msgid() 并自己填充标题。
并非所有后端都支持声明消息 ID(例如,SES 设置它自己的消息 ID 并在其发送响应中返回它)。如果您使用较新的(大约 1.1?)EmailMessage类,您实际上可以提取返回/生成/设置的消息 ID,您可以在调用 .send() 后从实例中提取返回的消息 ID,例如:
e=EmailMessage(
subject,
content,
from_email,
recipient_list,
headers = headers,
)
e.send()
message_id = e.extra_headers.get('Message-Id',None)