我想保存發送的電子郵件的MessageID,以便稍後可以在引用:頭中使用它以便於線程化。獲取發送郵件的MessageID最簡單/最乾淨的方式是什麼?
我在創建MessageID的root/django/trunk/django/core/mail.py(line〜55)中看到。
我想要收集這個值的最佳方式,除了複製/粘貼到新的後端模塊,並返回它。也許這是最好的方法?
我想保存發送的電子郵件的MessageID,以便稍後可以在引用:頭中使用它以便於線程化。獲取發送郵件的MessageID最簡單/最乾淨的方式是什麼?
我在創建MessageID的root/django/trunk/django/core/mail.py(line〜55)中看到。
我想要收集這個值的最佳方式,除了複製/粘貼到新的後端模塊,並返回它。也許這是最好的方法?
好的,我看到我正在瀏覽舊的悲劇代碼。在調用send之前,我應該能夠調用django.core.mail.message.make_msgid()並自己填充標頭。
不是所有的後端實際上都支持斷言一個消息ID(例如SES設置它自己的消息ID並將它返回給它的發送響應)。實際上,你可以拉出返回/生成/集的消息ID,如果你使用較新的EmailMessage類,一旦你打電話。發送(你可以提取實例返回的消息ID),例如(約1.1):
e=EmailMessage(
subject,
content,
from_email,
recipient_list,
headers = headers,
)
e.send()
message_id = e.extra_headers.get('Message-Id',None)
當recipient_list有很多電子郵件ID時,它是如何工作的。我們應該爲不同的收件人獲取不同的message_id。 – 2013-04-17 14:25:58
多個收件人都將具有相同的郵件ID,因爲您沒有(即使在SMTP級別)創建多條郵件,創建一條郵件,並且SMTP協議會將該郵件複製到多個收件人。我已經測試過SES並確認。 – Darb 2013-04-28 11:07:30
我無法使EmailMessage正常工作,變量中沒有message_id。我搬到了博託,它正確地返回message_id和(message_id,電子郵件)是我唯一的關鍵。但是我失去了使用SMTP而不是使用API的效率。 – 2013-05-02 12:58:05
歡迎來到Stack Overflow。既然你已經解決了你的問題,並記錄了答案,請接受答案作爲你的問題的答案。這樣其他居民就知道你不需要這個問題的任何幫助。 – 2010-08-14 18:49:19