当前位置:网站首页>运用flask框架发送短信验证码的流程及具体代码
运用flask框架发送短信验证码的流程及具体代码
2022-07-31 05:09:00 【城南花开了^】
1.获取短信验证码流程图
2.容联云配置
在容联云官网注册一个账号,发送短信验证码必须使用三个ID
ACCOUNT SID (主账户ID)
AUTH TOKEN (账户授权令牌)
AppID (AppID)
3.添加测试手机号 ( 必填 )
4.在flask后端安装容联云SDK
pip install ronglian_sms_sdk
发送短信调用配置
import json
from ronglian_sms_sdk import SmsSDK
def send_message(sms_code,mobile,expire=5):
sms_sdk = SmsSDK(accId='8aaf03013***********************',
appId='8aaf07087f77bf96017fddbf5f3e3334',
accToken='b2033c3b6d3b4dd6b931a138a8246af1')
tid = '1'
datas = ("%s"%sms_code,"%s"%expire)
res = sms_sdk.sendMessage(tid=tid,mobile=mobile,datas=datas)
resd=json.loads(res)
return resd
发送验证码视图
这里是将手机号作为存入redis时的key使用
import redis
from flask import jsonify
from flask_restful import Resource,reqparse
# 生成并存储短信验证码
class Scode(Resource):
def get(self):
paser = reqparse.RequestParser()
paser.add_argument('mobile')
args = paser.parse_args()
mobile = args.get('mobile')
sms_code = random.randint(100000,999999)
send_message(sms_code,mobile)
# 将验证码存入redis中
r = redis.Redis(host='localhost',db=0,port=6379)
sms_key = "sms_code:%s"%mobile
r.set(sms_key,sms_code,ex=300)
print("<<<验证码>>>",sms_code)
return jsonify(msg = "验证码已发送,请注意查收",code=200)
触发获取验证码函数即可发送成功
————————————————
边栏推荐
- [Detailed explanation of ORACLE Explain]
- Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。
- MySQL优化:从十几秒优化到三百毫秒
- SQL语句中对时间字段进行区间查询
- 工作流编排引擎-Temporal
- .NET-9. A mess of theoretical notes (concepts, ideas)
- SQL statement to range query time field
- About the problems encountered by Xiaobai installing nodejs (npm WARN config global `--global`, `--local` are deprecated. Use `--location=glob)
- The MySQL database installed configuration nanny level tutorial for 8.0.29 (for example) have hands
- MySQL(更新中)
猜你喜欢
MySQL optimization: from ten seconds to three hundred milliseconds
Go language study notes - dealing with timeout problems - Context usage | Go language from scratch
再见了繁琐的Excel,掌握数据分析处理技术就靠它了
12个MySQL慢查询的原因分析
Blockbuster | foundation for platinum, gold, silver gave nameboards donors
MySQL (updating)
About the problems encountered by Xiaobai installing nodejs (npm WARN config global `--global`, `--local` are deprecated. Use `--location=glob)
1. Get data - requests.get()
[mysql improves query efficiency] Mysql database query is slow to solve the problem
mysql stored procedure
随机推荐
Blockbuster | foundation for platinum, gold, silver gave nameboards donors
MySQL优化:从十几秒优化到三百毫秒
Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。
关于小白安装nodejs遇到的问题(npm WARN config global `--global`, `--local` are deprecated. Use `--location=glob)
Moment Pool Cloud quickly installs packages such as torch-sparse and torch-geometric
【MQ我可以讲一个小时】
为什么要用Flink,怎么入门使用Flink?
SQL statement to range query time field
Doris学习笔记之监控
numpy和pytorch中的元素拼接操作:stack,concatenat,cat
MySQL开窗函数
Interview Redis High Reliability | Master-Slave Mode, Sentinel Mode, Cluster Cluster Mode
What are the advantages and disadvantages of Unity shader forge and the built-in shader graph?
Numpy中np.meshgrid的简单用法示例
MySQL database backup
限流的原理
1. 获取数据-requests.get()
matlab simulink欠驱动水面船舶航迹自抗扰控制研究
[mysql improves query efficiency] Mysql database query is slow to solve the problem
.NET-9. A mess of theoretical notes (concepts, ideas)