django注冊用郵箱發(fā)送驗證碼的實現(xiàn)
更新時間:2021年04月18日 09:15:59 作者:舔舔檸檬
這篇文章主要介紹了django注冊用郵箱發(fā)送驗證碼的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
視圖代碼
lis = []#設置一個空列表用來存放發(fā)送的驗證碼,用來驗證
def yzm1():
res1 = ""
for i in range(4):#用四個隨機數(shù)組成驗證碼
num = random.randint(0, 9)
res1 += str(num)
lis.append(res1)#將驗證碼放入空的列表中
return res1#返回驗證碼
class zc(View):
def get(self, request):
return render(request, 'zc.html', locals())
def post(self, request):
name = request.POST['qq']#獲取前端傳遞進來的數(shù)據(jù)
subject = '驗證碼'
message = vercode()#獲取驗證碼
form = '837620306@qq.com'#獲取發(fā)送驗證碼的郵箱
# EMAIL_HOST_USER
rcipient_list = [name]
res = send_mail(subject=subject, message=message, from_email=form, recipient_list=rcipient_list)#發(fā)送驗證碼返貨真或假,假代表沒有發(fā)送成功
if res == 1:#判斷是否發(fā)送成功
return redirect('/app01/yzm/')#成功的話跳轉到驗證的網頁
else:#不成功的話返回注冊界面
return render(request, 'zc.html', locals())
def yzm2(request):
if request.method == 'GET':
return render(request, 'yzm.html', locals())
elif request.method == 'POST':
a = request.POST['much']#獲取到用戶輸入的驗證碼
if a == lis[-1]:#取最新的驗證碼
return HttpResponse('驗證碼正確')
else:
return HttpResponse('no')
用來發(fā)送驗證碼的郵箱需要打開POP3/SMTP服務和IMAP/SMTP服務,并且獲得POP3/SMTP服務的授權碼
settings 配置文件
另外需要對django的settings文件進行設置
# 設置發(fā)送郵件服務器:smtp.qq.com, EMAIL_HOST = 'smtp.qq.com' # 設置端口號,如果使用的是SSL,端口號為465或587 EMAIL_PORT = 25 #設置發(fā)件人郵箱 EMAIL_HOST_USER = 'xxxxx' # 設置發(fā)件人 授權碼 (POP3/SMTP服務的授權碼) EMAIL_HOST_PASSWORD = 'xxxxx' # 設置是否啟用安全鏈接 EMAIL_USER_TLS = True
到此這篇關于django注冊用郵箱發(fā)送驗證碼的實現(xiàn)的文章就介紹到這了,更多相關django 郵箱驗證碼內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python+OpenAI?Whisper實現(xiàn)視頻生成字幕
這篇文章主要為大家詳細介紹了如何利用Python和OpenAI?Whisper實現(xiàn)視頻生成字幕功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下2024-11-11
python使用OS模塊操作系統(tǒng)接口及常用功能詳解
os是?Python?標準庫中的一個模塊,提供了與操作系統(tǒng)交互的功能,在本節(jié)中,我們將介紹os模塊的一些常用功能,并通過實例代碼詳細講解每個知識點2023-06-06
蘋果Macbook Pro13 M1芯片安裝Pillow的方法步驟
Pillow作為python的第三方圖像處理庫,提供了廣泛的文件格式支持,本文主要介紹了蘋果Macbook Pro13 M1芯片安裝Pillow,具有一定的參考價值,感興趣的可以了解一下2021-11-11
利用PyQt5+Matplotlib 繪制靜態(tài)/動態(tài)圖的實現(xiàn)代碼
這篇文章主要介紹了利用PyQt5+Matplotlib 繪制靜態(tài)/動態(tài)圖的實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-07-07

