python 容联云测试短信接口
文章目录
- 1.注册容连云
- 1.1 登录即可看到开发者账号信息
- 1.2 添加测试账号
- 2.使用容联云发送代码测
- 3.在视图函数中使用
- 3.1写视图函数
- 3.1 添加路由
1.注册容连云
注册地址
1.1 登录即可看到开发者账号信息
1.2 添加测试账号
2.使用容联云发送代码测
'''1. 安装容联云sdk'''
pip install ronglian_sms_sdk
# 免费测试文档地址:https://doc.yuntongxun.com/p/5a531a353b8496dd00dcdfe2'''2. 短信发送代码'''
# libs/rl_sms.py # 放哪里都行
from ronglian_sms_sdk import SmsSDK
accId = '8a216da8747ac98201749c0de38723b7' # 开发者主账号 中的 ACCOUNT SID
accToken = '86072b540b4648229b27400414150ef2' # 开发者主账号 中的 AUTH TOKEN
appId = '8a216da8747ac98201749c0de45123be' # 开发者主账号 中的 AppIDdef send_message(phone, datas):sdk = SmsSDK(accId, accToken, appId)tid = '1' # 测试模板id为: 1. 内容为: 【云通讯】您的验证码是{1},请于{2}分钟内正确输入。# mobile = '133034xxxx'# datas = ('666777', '5') # 模板中的参数按照位置传递 (验证码,有效时间)resp = sdk.sendMessage(tid, phone, datas)return resp
3.在视图函数中使用
3.1写视图函数
from rest_framework.permissions import AllowAny
from rest_framework.views import APIView
from rest_framework.response import Response
import re
import random
from utils.rl_sms import send_message # 引入短息接口 class SmsCodeView(APIView):# 1. 所有人可以访问permission_classes = (AllowAny,)def post(self, request):# 1. 获取参数phone = request.data.get('phone')image_code = request.data.get('image_code')image_code_uuid = request.data.get('image_code_uuid')# 2. 检查参数if not all([phone, image_code, image_code_uuid]):return Response({"code": 999, "msg": "参数不全"})if not re.match(r'^1[3456789]\d{9}$', phone):return Response({"code": 999, "msg": "手机号码不正确"})# 3. 检查是否发送redis_client = get_redis_connection('img_code')phone_exists = redis_client.get(phone)if phone_exists:return Response({"code": 999, "msg": "频繁发送, 请稍后再试"})redis_image_code = redis_client.get(image_code_uuid) # bytesif redis_image_code:# bytes 转成 stringredis_image_code = redis_image_code.decode()# 比较用户提供的图片内容是否和redis中保存的一致if image_code.upper() != redis_image_code:return Response({'code': 999, 'msg': '图片验证码不正确'})# 4. 发送code = '%06d' % random.randint(0, 999999) # 随机6位验证码send_resp = send_message(phone, (code, "5"))# 5.1 保存code 到 redis中# redis_client.setex(phone, 60 * 5, code) # phone:code, 5分钟有效期# 5.2 从redis中删除这个图片验证码, 以防再次被使用# redis_client.delete(image_code_uuid)# 5.3 使用 pipeline 批量操作pl = redis_client.pipeline()pl.setex(phone, 60 * 5, code)pl.delete(image_code_uuid)pl.execute()# 6. 返回结果return Response({"code": 0, "msg": "短信发送成功"})
3.1 添加路由
urlpatterns = [path('sms_codes/', views.SmsCodeView.as_view()), # 可以直接访问测试
]
python 容联云测试短信接口相关推荐
- 容联云通讯短信接口 Python3 文档
容联云通讯官方还未发布python3以上的版本,此文档是向云通讯的工作人员获取的,下载后解压可以直接使用
- Go语言初识应用--容联云发送短信验证码、手机号注册
使用gin框架.gorm映射 所使用的连接容联云参考容联云官方文档,放置到utils中, gin项目结构根据自身需要,大题如下设置: utils--sms.go package main import ...
- Django使用容联云发送短信验证码时提示:172001,网络错误
尝试用django连接容联云发送短信验证码,运行时出现了以下提示:{'172001':'网络错误'}:在网上查阅资料后得知,是因为python升级到2.7.9之后引入了一个新特性,当打开一个https ...
- luffcc项目-06-使用容联云发送短信、Celery
一.使用容联云发送短信 https://www.yuntongxun.com/ 目录结构 sms.py import json from .SmsSDK import SmsSDK from djan ...
- 容联云发送短信验证码
setting配置 # 配置jwt的全局认证 REST_FRAMEWORK = {'DEFAULT_AUTHENTICATION_CLASSES':['rest_framework_jwt.authe ...
- python荣联云通讯短信平台
荣联云通讯短信平台 注册账号 管理模块>>应用管理>>创建应用>>编辑应用>>勾选短信验证码 安装 requests 模块 pip install re ...
- 容联云通讯短信平台JS调用
容联云通讯官网 1.注册 注册成功之后,会赠送8元进行测试 记录账号信息用于代码中配置 添加测试号码用于测试 2.接口配置(js) var md5 = require('blueimp-md5') v ...
- flask容联云发送短信验证码和异步发送
容联云地址:https://www.yuntongxun.com/ 获取短信验证码流程图 容联云配置 在容联云官网注册一个账号,发送短信验证码必须使用三个ID ACCOUNT SID (主账户ID ...
- 使用容联云获取短信验证码
容联云地址:https://www.yuntongxun.com/ 获取短信验证码流程图 容联云配置 在容联云官网注册一个账号,发送短信验证码必须使用三个ID ACCOUNT SID (主账户ID ...
最新文章
- 【OSX】build AOSP 2.3.7时的build error解决
- Flutter开发之Stack组件(层叠布局)(19)
- hdu 2222:Keywords Search
- 【杂谈】从学员到专栏作者、讲师,我在有三AI学习与名利双收的故事
- UNITY2018 真机开启deepprofiling的操作
- [CTO札记]Google数字图书馆对中国版权的威胁
- 动力环境监控系统论文_浅析建设智能化动力环境监控系统维护水平论文
- iOS开发笔记 基于wsdl2objc调用asp.net WebService
- 设置将Maven的jar包发布到lib
- Java学习(16-20天, 线性数据结构)
- 计数器matlab,MATLAB中的几个时间计数器
- 打开PowerPoint提示:PowerPoint上次起送时失败。以安全模式启动PowperPoint将帮助您纠正或发现启动中的问题
- 关于系统架构你不知道的那些事-架构设计流程:评估和选择备选方案
- ubuntu rsync 命令拷贝,显示进度
- 微信公众号自动回复多图文(php)
- 讲清MVC、MVP、MVVM,看这一篇文章就够了
- 军工企业信息化建设周涛_乘“云”之势,浪潮ERP布局军工企业云
- 女孩如何选择一个好听又适合的英语名字?
- 提醒大家有关越狱组it学院vip会员有猫腻,要小心。。。
- 详解哈希数据结构,手写哈希表
热门文章
- 配置Pico App ID
- matlab仿真单关节机器人,用MATLAB玩转机器人--第六章 用MATLAB玩转单关节机器人
- 当用户用input() 函数输入演员名字在屏幕 上打印出xx出演电影xx
- android 和 js 之间交互的封装
- 课程笔记-三维点云处理01 ——Introduction and Basic Algorithms
- 深圳大学计算机与软件学院2018分数线,深圳大学录取分数线2021是多少分(附历年录取分数线)...
- 自定义View——弹性滑动
- lotus domino_保护IBM Lotus Domino Web服务器的安全:案例研究
- vue 页面增加url前缀
- java写的表白小程序_Java实现表白小程序