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_USERrcipient_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/’)#成功的話跳轉(zhuǎn)到驗證的網(wǎng)頁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服務的授權(quán)碼
settings 配置文件另外需要對django的settings文件進行設置
# 設置發(fā)送郵件服務器:smtp.qq.com,EMAIL_HOST = ’smtp.qq.com’# 設置端口號,如果使用的是SSL,端口號為465或587EMAIL_PORT = 25#設置發(fā)件人郵箱EMAIL_HOST_USER = ’xxxxx’# 設置發(fā)件人 授權(quán)碼 (POP3/SMTP服務的授權(quán)碼)EMAIL_HOST_PASSWORD = ’xxxxx’# 設置是否啟用安全鏈接EMAIL_USER_TLS = True
到此這篇關于django注冊用郵箱發(fā)送驗證碼的實現(xiàn)的文章就介紹到這了,更多相關django 郵箱驗證碼內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!
相關文章:
1. php使用正則驗證密碼字段的復雜強度原理詳細講解 原創(chuàng)2. vue前端RSA加密java后端解密的方法實現(xiàn)3. JSP+Servlet實現(xiàn)文件上傳到服務器功能4. 基于jsp+mysql實現(xiàn)在線水果銷售商城系統(tǒng)5. 基于javaweb+jsp實現(xiàn)企業(yè)財務記賬管理系統(tǒng)6. CSS可以做的幾個令你嘆為觀止的實例分享7. ASP動態(tài)網(wǎng)頁制作技術經(jīng)驗分享8. 淺談由position屬性引申的css進階討論9. ASP中實現(xiàn)字符部位類似.NET里String對象的PadLeft和PadRight函數(shù)10. 利用CSS3新特性創(chuàng)建透明邊框三角

網(wǎng)公網(wǎng)安備