发送邮箱验证码进行注册验证
一、流程图
操作思路
进行邮箱验证码验证 比较与输入的验证码 是否一致 一致的话则可以注册
**
- 打开邮箱IMAP/SMTP服务
**
二、代码示例
(1)生成随机验证码
def get_random_str():# 验证码是由 字母a~z A~Z 数字 0~9 组成# 在 ascii 码中 小写a的起点是97 大写A起点是65num_ = [str(var) for var in range(0, 9)] # 数字的# 使用sample 在列表中随机生成6个任意字母数字return ''.join(random.sample(num_, 4))
(2)发送邮箱验证码
#定义参数
my_mail='你自己的4@qq.com'
#授权码
my_pass='你自己的授权码'#定义发送邮件的方法
class Send_EmailCode(APIView):def post(self,request):email = request.data.get('email') # 接收到用户的邮箱print(email)subject = '验证码验证服务'code = get_random_str() #生成验证码content = '您的验证码是%s,有限期为1分钟'%coderes = {}token = r.get(email)if token: # 去redis 中查看 是否这个邮箱res['code'] = 401res['message'] = "请一分钟后再次发送"print(token)return JsonResponse(res)else:#声明邮件对象msg = MIMEText(content,'plain','utf-8')#设置发送方对象msg['From'] = formataddr(['在线教育平台',my_mail])#设置收件方对象msg['To'] = formataddr(['尊敬的客户',email])#设置标题msg['Subject'] = subject#设置smtp服务器server = smtplib.SMTP_SSL("smtp.qq.com",465)#登录邮箱server.login(my_mail,my_pass)#发送邮件server.sendmail(my_mail,[email],msg.as_string())#关闭smtp链接server.quit()r.set(email,code) # 存储到redis# 设置访问周期为60秒r.expire(email, 6000)res['code'] = 200res['message'] = "验证码已发送"res['or'] = r.get(email)return JsonResponse(res)
ps:1.此处封装方法,调用是直接调用,隐藏授权码,防止自己信息暴露
ps:2.将生成的验证码存入redis数据库中 进行比较
发送邮箱验证码进行注册验证相关推荐
- Java web发送邮箱验证码,并验证正确性
Java web实现邮箱验证码功能 第一步.开启发件邮箱权限(以QQ邮箱为例) 第二步.生成验证码 第三步.发送邮件 第四步.web前端 第五步.servlet程序 先放一张程序的预览图 工程下载链接 ...
- tornado web高级开发项目之抽屉官网的页面登陆验证、form验证、点赞、评论、文章分页处理、发送邮箱验证码、登陆验证码、注册、发布文章、上传图片...
本博文将一步步带领你实现抽屉官网的各种功能:包括登陆.注册.发送邮箱验证码.登陆验证码.页面登陆验证.发布文章.上传图片.form验证.点赞.评论.文章分页处理以及基于tornado的后端和ajax的 ...
- Thinkphp5.1实现发送邮箱验证码
这里使用的是 phpmailer/phpmailer 这个类 第一步加载类 composer require phpmailer/phpmailer 第二步编写公共方法 /*** 邮箱验证码* @pa ...
- Java发送邮箱验证码、session校验功能
本篇主要描述"发送邮箱验证码.session校验"相关前(htmljs)后(java)台代码,业务逻辑示例,闲话少诉,直接上代码. 1.引入的jar包是mail-1.4.jar 2 ...
- spring boot 实现发送邮箱验证码
首先设置一下发件人邮箱,以QQ邮箱为例: 找到帐户,开启POP3/SMTP服务 然后会提醒你怎么去实现,验证完后,会给你一个授权码,记住这个授权码,后端spring boot 会用到 下面回到IDEA ...
- 使用SpringBoot发送邮箱验证码
使用SpringBoot发送邮箱验证码 一.开启发送验证码邮箱的POP3/SMTP服务 1. 登录发送验证码邮箱 2. 找到设置,开启POP3/SMTP服务 二.导入依赖 三.增加配置 四.编写代码 ...
- 关于PHP发送邮箱验证码功能介绍
关于PHP发送邮箱验证码功能介绍 PHP语言发送邮箱验证码,可以使用PHPMailer这个现成的类文件,完美集成实现邮箱发送验证码 前期准备: a).PHPMailer下载地址:在git上获取最新版即 ...
- java注册界面发送邮箱验证码(无线程版)
邮箱验证注册 本篇文章使用第三方jar包实现邮箱发送验证码来注册用户,该文章未采用线程如果多人访问注册注册页面发送邮件可能会导致服务器崩溃,建议采用线程发送邮件!!! 一.前期准备工作 1.发送验 ...
- nodejs实现发送邮箱验证码功能
今天做了个小demo,是用nodejs实现注册时(当然在别的地方也是可以用的)的邮箱验证功能,大体就是往指定的邮箱发送六位验证码.以下是详细步骤. 1.使用模块:nodemailer 安装:npm i ...
最新文章
- Twitter在超分辨率技术上取得新进展,能还原打码图片
- python交互式命令_在python中运行交互式命令
- 明星软件工程师的十种特质
- 配置百度云盘python客户端bypy上传备份文件
- yolov3项目工程
- SAP Spartacus 默认的 pwa,处于关闭状态还是打开状态?
- 打造更好用的 EF 自动审计
- HDU 1204 基础DP 非连续字段的最大和
- java 通过模板替换pdf_word模板替换方案 PDF 下载
- DeprecationWarning:current URL string parser is deprecated, and will be removed in a future version.
- 电力企业信息化建设方案之调度信息报送系统
- [hystar整理]Entity Framework 教程
- 27.卷1(套接字联网API)---IP选项
- OC_UISlider
- android设置view透明度渐变,android中 怎么实现一张图片从左到右透明度改变渐变消失的动画效果 Android 动态渐变 泽.. - 贪吃蛇学院-专业IT技术平台...
- php程序员自我描述_PHP程序员求职简历的自我评价范文
- 安徽自招大专计算机,2021年安徽自主招生学校名单有哪些,安徽自主招生大专院校名单【详细版】...
- 利用css画三角箭头图标
- 小白用户的福音——win10系统云重装
- 系统分析师近几年论文走向