欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎么在django中使用smtp模塊發(fā)送郵件-創(chuàng)新互聯(lián)

這篇文章給大家介紹怎么在django中使用smtp模塊發(fā)送郵件,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

成都創(chuàng)新互聯(lián)專注于企業(yè)營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、雷山網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為雷山等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

兩行就可以搞定一封郵件:

from django.core.mail import send_mail

send_mail(
  'Subject here',
  'Here is the message.',
  'from@example.com',
  ['to@example.com'],
  fail_silently=False,
)

導(dǎo)入功能模塊,然后發(fā)送郵件,so easy!

默認(rèn)情況下,使用配置文件中的EMAIL_HOST和EMAIL_PORT設(shè)置SMTP服務(wù)器主機(jī)和端口,EMAIL_HOST_USER和EMAIL_HOST_PASSWORD是用戶名和密碼。如果設(shè)置了EMAIL_USE_TLS和EMAIL_USE_SSL,它們將控制是否使用相應(yīng)的加密鏈接。

二、單發(fā) send_mail()

方法原型:send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=None, auth_password=None, connection=None, html_message=None)[source]

讓我們來(lái)了解一下send_mail()方法,它接收一系列參數(shù),其中的subject、message、from_email和recipient_list參數(shù)是必須的,其它的可選。

  • subject:郵件主題。字符串。

  • message:郵件具體內(nèi)容。字符串。

  • from_email:郵件發(fā)送者。字符串。

  • recipient_list:收件人。一個(gè)由郵箱地址組成的字符串列表。recipient_list中的每一個(gè)成員都會(huì)在郵件信息的“To:”區(qū)域看到其它成員。

  • fail_silently: 一個(gè)布爾值。如果它是False,send_mail發(fā)送失敗時(shí),將會(huì)引發(fā)一個(gè)smtplib.SMTPException異常。

  • auth_user: 可選的用戶名用來(lái)驗(yàn)證SMTP服務(wù)器,如果你要特別指定使用哪個(gè)郵箱帳號(hào),就指定這個(gè)參數(shù)。如果沒(méi)有提供這個(gè)值,Django將會(huì)使用settings中EMAIL_HOST_USER的值。如果兩者都不提供,那你還發(fā)什么???

  • auth_password: 可選的密碼用來(lái)驗(yàn)證SMTP服務(wù)器。如果沒(méi)有提供這個(gè)值,Django 將會(huì)使用settings中EMAIL_HOST_PASSWORD的值。和上面那個(gè)參數(shù)是一家的。

  • connection: 可選的用來(lái)發(fā)送郵件的電子郵件后端。

  • html_message: 如果提供了html_message,可以發(fā)送帶HTML代碼的郵件。

send_mail()方法返回值將是成功發(fā)送出去的郵件數(shù)量(只會(huì)是0或1,因?yàn)樗荒馨l(fā)送一封郵件)。

三、群發(fā) send_mass_mail()

方法原型:send_mass_mail(datatuple,fail_silently = False,auth_user = None,auth_password = None ,connection = None)[source]

send_mass_mail()用來(lái)處理大批量郵件任務(wù),也就是所謂的群發(fā)。

它的參數(shù)中,datatuple是必需參數(shù),接收一個(gè)元組,元組的每個(gè)元素的格式如下:

(subject, message, from_email, recipient_list)
上面四個(gè)字段的意義與send_mail()中的相同。

例如,以下代碼將向兩組不同的收件人發(fā)送兩個(gè)不同的消息;但是,只能打開(kāi)一個(gè)到郵件服務(wù)器的連接:

message1 = ('Subject here', 'Here is the message', 'from@example.com', ['first@example.com', 'other@example.com'])

message2 = ('Another Subject', 'Here is another message', 'from@example.com', ['second@test.com'])

send_mass_mail((message1, message2), fail_silently=False)

send_mass_mail()方法的返回值是成功發(fā)送的郵件數(shù)量。

使用send_mail()方法時(shí),每調(diào)用一次,它會(huì)和SMTP服務(wù)器建立一次連接,也就是發(fā)一次連一次,效率很低。而send_mass_mail(),則只建立一次鏈接,就將所有的郵件都發(fā)送出去,效率比較高。

四、防止頭部注入攻擊

有時(shí)候,我們要根據(jù)用戶表單的輸入來(lái)構(gòu)造電子郵件,這就存在頭部注入攻擊的風(fēng)險(xiǎn),Django給我們提供了一定的防范能力,但是更多時(shí)候,還需要你自己編寫(xiě)安全防范代碼。

下面是一個(gè)例子,接收用戶輸入的主題、郵件內(nèi)容和發(fā)送方,將郵件發(fā)送到系統(tǒng)管理員:

from django.core.mail import send_mail, BadHeaderError
from django.http import HttpResponse, HttpResponseRedirect

def send_email(request):
  subject = request.POST.get('subject', '')
  message = request.POST.get('message', '')
  from_email = request.POST.get('from_email', '')
  if subject and message and from_email:
    try:
      send_mail(subject, message, from_email, ['admin@example.com'])
    except BadHeaderError:
      return HttpResponse('Invalid header found.')
    return HttpResponseRedirect('/contact/thanks/')
  else:
    # In reality we'd use a form class
    # to get proper validation errors.
    return HttpResponse('Make sure all fields are entered and valid.')

如果檢查到用戶的輸入帶有頭部注入攻擊的可能性,會(huì)彈出BadHeaderError異常。

五、發(fā)送多媒體郵件

默認(rèn)情況下,發(fā)送的郵件都是純文本格式的。但有時(shí)候我們希望能在郵件里帶一些超級(jí)鏈接、圖片,甚至視頻和JS動(dòng)作。

Django為我們提供了一個(gè)EmailMultiAlternatives類,可以同時(shí)發(fā)送文本和HTML內(nèi)容,下面是個(gè)范例,我們照著寫(xiě)就行:

from django.core.mail import EmailMultiAlternatives

subject, from_email, to = 'hello', 'from@example.com', 'to@example.com'
text_content = 'This is an important message.'
html_content = '<p>This is an <strong>important</strong> message.</p>'
msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
msg.attach_alternative(html_content, "text/html")
msg.send()

關(guān)于怎么在django中使用smtp模塊發(fā)送郵件就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享名稱:怎么在django中使用smtp模塊發(fā)送郵件-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://aaarwkj.com/article26/ccdicg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、云服務(wù)器面包屑導(dǎo)航、建站公司、網(wǎng)站設(shè)計(jì)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司
超碰97免费在线观看| 国产交换精品一区二区三区| 香蕉久草官网视频观看| 日韩一级免费高清黄片| 最新手机免费黄色av网站| 97视频精品在线播放| 亚洲人成网站在线免费看| 国产传媒视频网站在线观看| 亚洲综合国产一区二区| 中文字幕亚洲精品熟女少妇| 亚洲av毛片在线免费播放| 给我搜亚洲免费播放黄色大片| 亚洲一区二区精品偷拍| 人人妻人人澡人人爽人人dvd| 国产又粗又爽视频免费| 亚洲综合av一区二区| 男人天堂av一区二区| 日本成人在线播放网站| 中文字幕乱码亚洲精品一区| 久久国产精品午夜视频| 国产综合亚洲欧美日韩| 国产b片免费在线观看| 日本一区二区三区免费不卡视频| 久久综激情丁香开心婷婷| 自拍偷拍亚洲丝袜大秀| 国产夫妻一区二区三区| 中文字幕伦理一区二区| 精品女厕一区二区三区| 精品一区二区亚洲精品| 夜色一区二区av人片| 日韩国产欧美一区二区在线视频 | 亚洲国产剧情中文字幕| 小明久久国内精品自线| 亚洲熟女精品不卡一区二区| 日韩视频播放一区二区| 最近最新免费成人在线视频| 亚洲精品入口一区二区| 伊人久久精品一区二区| 丰满人妻侵犯中文字幕| 国产传媒在线观看网站| 日韩精品一区二区三区四区蜜桃|