Django如何使用第三方服務(wù)發(fā)送電子郵件
在 Django 網(wǎng)站中使用 mailgun 的郵件收發(fā)服務(wù)。
1.在 mailgun 官網(wǎng)上注冊個賬號(免費,免費賬號每個月有10000條收發(fā)郵件的服務(wù),對我來說已經(jīng)完全夠用了),注冊完成后界面如圖所示:

然后我們點擊 Domain選項,可以看到系統(tǒng)自動為我們生成了一個默認可用域名,點進去查看詳細信息。

注意這個域名只是作為測試用,如果需要用來收發(fā)電子郵件,你需要添加新域名或者在該測試域名設(shè)置下 Authorized Recipients -> Manage Authorized Recipients 添加收發(fā)信任郵箱。
2.安裝 anymail 模塊,該模塊支持多個第三方郵件收發(fā)服務(wù)與 Django 建立連接。
pip install django-anymail
該模塊的詳細用法,參考:https://github.com/anymail/django-anymail
3.然后我們在 Django 項目中的 setting.py 文件中添加
INSTALLED_APPS = [
# ...
"anymail",
# ...
]
ANYMAIL = {
"MAILGUN_API_KEY": "your Mailgun key",
"MAILGUN_SENDER_DOMAIN": 'mg.example.com', # your Mailgun domain, if needed
}
EMAIL_BACKEND = "anymail.backends.mailgun.EmailBackend" # or sendgrid.EmailBackend, or...
DEFAULT_FROM_EMAIL = "you@example.com" # if you don't already have this in settings
MAILGUN_API_KEY 和 MAILGUN_SENDER_DOMAID 這兩個參數(shù),可以從郵件域名設(shè)置中找到:

view.py 文件中添加:
from django.core.mail import send_mail
#只需一個send_mail 函數(shù),便能發(fā)送郵件
send_mail("It works!", "This will get sent through Mailgun",
"Anymail Sender <from@example.com>", [to@example.com])
(官網(wǎng)的例子哈,跟我項目有差入就不修改了)
4.運行 Django 項目,填入反饋意見,便在我們設(shè)置的郵箱中收到發(fā)送的郵件。


以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python3.9.1中使用split()的處理方法(推薦)
這篇文章主要介紹了Python3.9.1中使用split()的處理方法(推薦),本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
Python多線程與異步處理在HTTP請求中的應(yīng)用方式
這篇文章主要介紹了Python多線程與異步處理在HTTP請求中的應(yīng)用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06
django+xadmin+djcelery實現(xiàn)后臺管理定時任務(wù)
這篇文章主要介紹了django+xadmin+djcelery實現(xiàn)后臺管理定時任務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08
pandas讀取Excel批量轉(zhuǎn)換時間戳的實踐
本文主要介紹了pandas讀取Excel批量轉(zhuǎn)換時間戳的實踐,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2023-02-02

