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实现的去除win下文本文件头部BOM的代码
Feb 10 Python
使用Django的模版来配合字符串翻译工作
Jul 27 Python
Python Sql数据库增删改查操作简单封装
Apr 18 Python
使用Python从有道词典网页获取单词翻译
Jul 03 Python
django中的HTML控件及参数传递方法
Mar 20 Python
python中的json总结
Oct 11 Python
在python中对变量判断是否为None的三种方法总结
Jan 23 Python
详解Python爬取并下载《电影天堂》3千多部电影
Apr 26 Python
Python实现图片添加文字
Nov 26 Python
Python使用pdb调试代码的技巧
May 03 Python
keras中epoch,batch,loss,val_loss用法说明
Jul 02 Python
python 如何调用 dubbo 接口
Sep 24 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中用PHPMailer来发送邮件的示例(126.com的例子)
2013/06/24 PHP
php curl登陆qq后获取用户信息时证书错误
2015/02/03 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
2017/01/24 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
2018/02/08 PHP
用javascript实现改变TEXTAREA滚动条和按钮的颜色,以及怎样让滚动条变得扁平
2007/04/20 Javascript
不同Jquery版本引发的问题解决
2013/10/14 Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
2015/10/26 Javascript
json传值以及ajax接收详解
2016/05/24 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
解决Extjs下拉框不显示的问题
2017/06/21 Javascript
vue项目中的webpack-dev-sever配置方法
2017/12/14 Javascript
JS实现根据指定值删除数组中的元素操作示例
2018/08/02 Javascript
详解javascript中的Error对象
2019/04/25 Javascript
微信小程序点击图片实现长按预览、保存、识别带参数二维码、转发等功能
2019/07/20 Javascript
JS实现的碰撞检测与周期移动完整示例
2019/09/02 Javascript
Vue实现PC端靠边悬浮球的代码
2020/05/09 Javascript
[01:20]DOTA2 2017国际邀请赛冠军之路无止竞
2017/06/19 DOTA
python使用socket向客户端发送数据的方法
2015/04/29 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
在PyCharm的 Terminal(终端)切换Python版本的方法
2019/08/02 Python
python scrapy爬虫代码及填坑
2019/08/12 Python
wxpython多线程防假死与线程间传递消息实例详解
2019/12/13 Python
H5仿微信界面教程(一)
2017/07/05 HTML / CSS
丹麦优惠购物网站:PLUSSHOP
2019/03/24 全球购物
德国专业木制品经销商:Holz-Direkt24
2019/12/26 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
军训自我鉴定200字
2014/02/13 职场文书
合伙协议书
2014/04/23 职场文书
祖国在我心中演讲稿300字
2014/05/04 职场文书
淘宝好评语大全
2014/05/05 职场文书
诉讼财产保全担保书
2014/05/20 职场文书
推广活动策划方案
2014/08/23 职场文书
家长对孩子的寄语
2015/02/26 职场文书
项目技术负责人岗位职责
2015/04/13 职场文书
2015年话务员工作总结
2015/04/29 职场文书
不要在HTML中滥用div
2021/05/08 HTML / CSS