django注册用邮箱发送验证码的实现


Posted in Python onApril 18, 2021

视图代码

lis = []#设置一个空列表用来存放发送的验证码,用来验证
def yzm1():
    res1 = ""
    for i in range(4):#用四个随机数组成验证码
        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']#获取前端传递进来的数据
        subject = '验证码'
        message = vercode()#获取验证码
        form = '837620306@qq.com'#获取发送验证码的邮箱
        # EMAIL_HOST_USER
        rcipient_list = [name]
        res = send_mail(subject=subject, message=message, from_email=form, recipient_list=rcipient_list)#发送验证码返货真或假,假代表没有发送成功
        if res == 1:#判断是否发送成功
            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')

用来发送验证码的邮箱需要打开POP3/SMTP服务和IMAP/SMTP服务,并且获得POP3/SMTP服务的授权码

settings 配置文件

另外需要对django的settings文件进行设置

# 设置发送邮件服务器:smtp.qq.com,
EMAIL_HOST = 'smtp.qq.com'
# 设置端口号,如果使用的是SSL,端口号为465或587
EMAIL_PORT = 25
#设置发件人邮箱
EMAIL_HOST_USER = 'xxxxx'
# 设置发件人 授权码   (POP3/SMTP服务的授权码)
EMAIL_HOST_PASSWORD = 'xxxxx'
# 设置是否启用安全链接
EMAIL_USER_TLS = True

到此这篇关于django注册用邮箱发送验证码的实现的文章就介绍到这了,更多相关django 邮箱验证码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
Jun 10 Python
对Python新手编程过程中如何规避一些常见问题的建议
Apr 01 Python
Python中的map()函数和reduce()函数的用法
Apr 27 Python
python入门前的第一课 python怎样入门
Mar 06 Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
May 24 Python
Python实现基于POS算法的区块链
Aug 07 Python
Python操作mongodb数据库的方法详解
Dec 08 Python
Python实现简易过滤删除数字的方法小结
Jan 09 Python
三步实现Django Paginator分页的方法
Jun 11 Python
Python学习笔记之列表推导式实例分析
Aug 13 Python
python openCV获取人脸部分并存储功能
Aug 28 Python
分享Python异步爬取知乎热榜
Apr 12 Python
Python控制台输出俄罗斯方块的方法实例
Apr 17 #Python
python3 实现mysql数据库连接池的示例代码
Python如何利用正则表达式爬取网页信息及图片
Apr 17 #Python
python中sys模块的介绍与实例
Apr 17 #Python
Python中os模块的简单使用及重命名操作
Apr 17 #Python
Python利器openpyxl之操作excel表格
Pytest实现setup和teardown的详细使用详解
You might like
php 保留小数点
2009/04/21 PHP
Javascript 面向对象(三)接口代码
2012/05/23 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
2014/08/27 Javascript
JavaScript中的无阻塞加载性能优化方案
2014/10/10 Javascript
javascript面向对象之定义成员方法实例分析
2015/01/13 Javascript
JavaScript获取表单内所有元素值的方法
2015/04/02 Javascript
详解Document.Cookie
2015/12/25 Javascript
jQuery Ajax File Upload实例源码
2016/12/12 Javascript
jquery插件锦集【推荐】
2016/12/16 Javascript
js实现canvas保存图片为png格式并下载到本地的方法
2017/08/31 Javascript
JS实现图片放大镜插件详解
2017/11/06 Javascript
JS中的算法与数据结构之集合(Set)实例详解
2019/08/20 Javascript
JS中this的4种绑定规则详解
2020/02/04 Javascript
[00:35]TI7不朽珍藏III——寒冰飞龙不朽展示
2017/07/15 DOTA
Django REST为文件属性输出完整URL的方法
2017/12/18 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
Python 中的Selenium异常处理实例代码
2018/05/03 Python
python处理DICOM并计算三维模型体积
2019/02/26 Python
Python获取统计自己的qq群成员信息的方法
2019/11/15 Python
Python实现银行账户资金交易管理系统
2020/01/03 Python
在Keras中CNN联合LSTM进行分类实例
2020/06/29 Python
Python基于locals返回作用域字典
2020/10/17 Python
Python实现京东抢秒杀功能
2021/01/25 Python
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2014/01/19 面试题
父亲生日宴会答谢词
2014/01/10 职场文书
购房协议书
2014/04/11 职场文书
保护环境演讲稿
2014/05/10 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
2014年连锁店圣诞节活动方案
2014/12/09 职场文书
国庆节慰问信
2015/02/15 职场文书
公司员工违纪检讨书
2015/05/05 职场文书
离婚纠纷代理词
2015/05/23 职场文书
董事长新年致辞
2015/07/29 职场文书
解决numpy数组互换两行及赋值的问题
2021/04/17 Python
CentOS下安装Jenkins的完整步骤
2022/04/07 Servers