测试 获取验证码

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr #定义参数
my_mail = "2501186626@qq.com"
#授权码
my_pass = "qnxrmxwxlyzoeadc" #定义发送邮件的方法
def mail(subject,content,mailaddr): #声明邮件对象
msg = MIMEText(content,'plain','utf-8') #设置发送方对象
msg['From'] = formataddr(['在线教育平台',my_mail]) #设置收件方对象
msg['To'] = formataddr(['尊敬的客户',mailaddr]) #设置标题
msg['Subject'] = subject #设置smtp服务器
server = smtplib.SMTP_SSL("smtp.qq.com",465) #登录邮箱
server.login(my_mail,my_pass) #发送邮件
server.sendmail(my_mail,[mailaddr],msg.as_string()) #关闭smtp链接
server.quit() mail('验证码验证服务','您的验证码是6666,有限期为2分钟','164850527@qq.com')

  获取qq验证码接口

class Main(APIView):
def post(self,request):
my_mail=request.data.get('email')
mailaddr=my_mail
my_pass = "qnxrmxwxlyzoeadc"
subject='验证码验证服务'
import random
content='%06d' % random.randint(0, 999999) # 随机6位验证码
msg = MIMEText(content, 'plain', 'utf-8')
# 设置发送方对象
msg['From'] = formataddr(['在线教育平台', my_mail]) # 设置收件方对象
msg['To'] = formataddr(['尊敬的客户', mailaddr]) # 设置标题
msg['Subject'] = subject # 设置smtp服务器
server = smtplib.SMTP_SSL("smtp.qq.com", 465) # 登录邮箱
server.login(my_mail, my_pass) # 发送邮件
server.sendmail(my_mail, [mailaddr], msg.as_string()) # 关闭smtp链接
server.quit() redis_client = get_redis_connection('default') # 指定设置 redis 库
redis_client.setex(my_mail, 60 * 5, content) # 通过键 和有效时间 存储验证码
return Response({'msg':'ok','code':'发送成功',})

setting 配置 redis 数据库

CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
}
}

 获取redis 验证码

from django_redis import get_redis_connection
redis_client = get_redis_connection('default') # 指定数据库
redis_code=redis_client.get(email) # phone:code # 获取数据
if redis_code:
redis_code= redis_code.decode()
if not code ==redis_code:
return Response({'msg':'验证码不正确'})

  

  

 

qq获取验证码接口的更多相关文章

  1. Android Demo手机获取验证码

    注册很多app或者网络账户的时候,经常需要手机获取验证码,来完成注册,那时年少,只是觉得手机获取验证码这件事儿很好玩,并没有关心太多,她是如何实现的,以及她背后的故事到底是什么样子的,现在小编接手的这 ...

  2. C# WinForm 使用SMTP协议发送QQ邮箱验证码

    文章来自:https://blog.csdn.net/IT_xiao_guang_guang/article/details/104336604 前言   在程序设计中,发送验证码是常见的一个功能,用 ...

  3. web qq 获取好友列表hash算法

    web qq 获取好友列表hash算法 在使用web qq的接口进行好友列表获取的时候,需要post一个参数:hash 在对其js文件进行分析之后,发现计算hash的函数位于: http://0.we ...

  4. Spring技术_邮箱注册_激活_获取验证码

    项目结构 项目中用到的sql: create database hrSystem; use hrSystem; CREATE TABLE `emailverificationcode` ( `id` ...

  5. 微信js-sdk开发获取签名和获取地理位置接口示例

    ###微信js-sdk开发获取签名和获取地理位置接口示例 前言:在做微信公众号开发时需要获取用户的地理位置信息,之前通过高德或者百度.腾讯等地图的api时发现经常获取不到,毕竟第三方的东西,后来改为采 ...

  6. angular中service封装$http做权限时拦截403等状态及获取验证码倒计时、跨域问题解决

    封装$http.做权限时拦截403等状态及获取验证码倒计时: 拦截接口返回状态 var app = angular.module('app'); app.factory('UserIntercepto ...

  7. 通过webbrowser控件获取验证码

    1.首先介绍下基本控件(拖控件大家都会,我就不一一介绍了),看下图: 2.添加MSHTML引用,步骤如下: 解决方案—右键“引用”—​添加引用—在.NET下找到Microsoft.mshtml组件—点 ...

  8. 微信开发(2):微信js sdk分享朋友圈,朋友,获取config接口注入权限验证(转)

    进行微信开发已经一阵子了,从最初的什么也不懂,到微信授权登录,分享,更改底部菜单,素材管理,等. 今天记录一下微信jssdk 的分享给朋友的功能,获取config接口注入. 官方文档走一下简单说:四步 ...

  9. Atitit.获取验证码图片通过web

    Atitit.获取验证码图片通过web 1. WebRequest进行较为底层的访问(不推荐) 1 2. WebBrowser截图 1 3. 剪贴板复制法Clipboard(推荐) 1 4. C# 取 ...

随机推荐

  1. JS简单介绍与简单的基本语法

    1.JavaScirpt是一门编程语言,是为前端服务的一门语言. (1)基础语法 (2)数据类型 (3)函数 (4)面向对象 2.还涉及到BOM和DOM (1)BOM(操作浏览器的一些功能) (2)D ...

  2. Linux Shell 错误: $'\r': command not found错误解决

    在Linux下执行程序最省事的方式就是将系统的执行流程封装成一个shell脚本,上传到linux环境中后就可以直接执行了,但是今天在具体实施的时候出现了错误 $'\r': command not fo ...

  3. Mysql获取webshell方式总结

    select ... into outfile general_log cnblogs-MySQL获取webshell的几种方式 csdn-PhpMyadmin后台拿webshell方法总结

  4. 前端web安全-CSRF基础入门

    前言 今天找了个新地方进行学习 嘿嘿  采光不错!特别适合看书呢. 前言 1.CSRF 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click att ...

  5. 不想错过网课?不妨用Camtasia录制下来!

    2020年突发的这场疫情给我们的日常生活与学习带来了一些不便,却也意外的让网课走红了起来.小学.中学.大学都开始通过媒体工具或直播平台开始授课,但网络授课与实际课堂上课还是有区别的,学生们受到环境影响 ...

  6. FL Studio进行侧链编辑的三种方式

    侧链是一种信号处理技术,通过它我们可以使用一个信号波形的振幅(音量)来控制另一个信号的某些参数.在电子音乐中,例如trance,house和techno,我们通常会用kick(底鼓)和bass进行演奏 ...

  7. python截取视频制作动态表情包+文字

    1:安装moviepy库 2:安装IPython库 代码如下: from moviepy.editor import * from IPython.display import Image def B ...

  8. 【线程池】自己声明临时线程池一定要shutdown!

    场景: 某个定时任务需要多线程执行,执行时间较久且每天只跑一次,想单独拉出一个线程池和其他业务隔离开,交给spring会导致核心线程一直存在 浪费线程资源,因此想单独拉一个池子用完就丢,原本想的是,在 ...

  9. pip递归安装报错继续安装

    使用命令pip freeze > requirements.txt导出项目依赖包之后,使用pip -r requirements.txt的时候可能会出现一些包安装出错,但是安装一旦出错,安装就会 ...

  10. 腾讯云 CHDFS — 云端大数据存算分离的基石

    随着网络性能提升,云端计算架构逐步向存算分离转变,AWS Aurora 率先在数据库领域实现了这个转变,大数据计算领域也迅速朝此方向演化. 存算分离在云端有明显优势,不但可以充分发挥弹性计算的灵活,同 ...