2011-01-05 146 views
8

我有一個網站上的contact form(一般形式:名稱電子郵件受試者消息),在該電子郵件被使用發送谷歌應用程序 smtp的管理員。
當前如果管理員想直接回復郵件選擇回覆選項,該人的回覆的字段將自動填寫發件人的地址。電子郵件,一個不同的「回覆」地址比發送方地址

我想問的是,有沒有任何標準化的方式來傳遞一些額外的信息與郵件,這將定義任何回覆郵件應該去這個地址,而不是發件人的?

看來這個選項似乎有一點機會,因爲它可能會導致一些垃圾郵件發送者的問題(他們可能會在郵件中定義一個自定義回覆字段,而普通用戶可能不會看他們回覆的地方) 。

所以作爲替代方案,我認爲是找到一種方法來創建一個過濾器與發件人的帳戶,從中計算出格式的回覆電子郵件地址並轉發郵件(似乎不是一個好的解決方案,我沒有想法如何實現這一點)。

我已經標記了django,雖然這與此沒有直接關係,因爲我最終將通過django來實現此目的。

回答

13

我只是GOOGLE上搜索更多(使用錯誤的關鍵詞前面我猜的),看郵件傳輸協議,有INFACT標準化頭來sepcifie響應頭:http://cr.yp.to/immhf/response.html

至於在Django執行這一關注有關於這個存在於documentation一個例子:

email = EmailMessage('Hello', 'Body goes here', '[email protected]', 
     ['[email protected]', '[email protected]'], ['[email protected]'], 
     headers = {'Reply-To': '[email protected]'}) 

看起來這應該可以解決我的問題。

+0

請注意[在Django 1.8](https://docs.djangoproject.com/en/1.9/topics/email/#django.core.mail.EmailMessage)中,新的'reply_to'參數已被添加到'EmailMessage對象。 – mlissner 2016-03-25 20:46:57

3

Reply-To是標準的SMTP標頭。

目前我找不到一個很好的參考,但它在維基百科文章Email中提到。

編輯:發現:RFC 5322,3.6.2

+0

thanks @david,找到附錄A.2中規範的答覆;如果垃圾郵件發送者欺騙郵件地址的回覆,這不是有點危險嗎? – crodjer 2011-01-05 05:04:43

+1

只是欺騙他們已經在做的地址。但據我所知,大多數垃圾郵件是廣告,並不打算予以回覆,所以我認爲回覆地址並不重要。 – 2011-01-05 05:41:25

1

該RFC說,你可以指定多個電子郵件,這就是我一直在尋找。想出了這個:

from django.core.mail import EmailMessage 
headers = {'Reply-To': '[email protected];[email protected]'} 
msg = EmailMessage(subject, html_content, EMAIL_HOST_USER, email_list, headers=headers) 
msg.content_subtype = "html" 
msg.send() 

工程就像一個魅力。注意:根據Django doc電子郵件設置,EMAIL_HOST_USER從您的設置文件導入。有關此處的更多信息,請搜索'答覆':https://docs.djangoproject.com/en/dev/topics/email/

相關問題