前言
近期做网页注册需要用到发送验证码功能,于是用荣联云的发送短信验证码进行测试,官网上提供的demo是python2.7的,而目前都使用的python3了,而且demo中的代码太长了,我只取demo中发送单条短信的部分进行修改,首先具体步骤如下:
登录官网 https://www.yuntongxun.com
1、注册账号(需要用到手机号)
2、查看开发文档,得到api接口参数
3、根据demo重新编写python代码

短信发送接口
1.1 业务流程说明

1.2 Base URL
模板短信API引用的地址有Base URL。
生产环境的Base URL:https://app.cloopen.com:8883
注意:为了确保数据隐私,云通讯平台的REST API是通过HTTPS方式请求。
1.3 统一请求包头
URL格式:/2013-12-26/Accounts/{accountSid}/SMS/TemplateSMS?sig={SigParameter}
在URL格式中 {}内的内容表示为参数,非{}的内容固定不变。

1.4 HTTP标准包头字段
Accept:application/xml;
Content-Type:application/xml;charset=utf-8;
Content-Length:256;
Authorization:
属性说明:

1.5 请求包体

根据官网上所提供的这些要求,我们就可以进行代码的编写了。

import datetime
import base64
import hashlib
import requests
import jsonclass RongLian(object):def __init__(self):self.AccountSid = ''  # 填写首页上对应的AccountSidself.AccountToken = ''  # 填写首页上对应的AccountTokenself.AppId = ''  # 填写首页上对应的AppId self.ServerPort = '8883'self.ServerIP = 'app.cloopen.com'self.SoftVersion = '2013-12-26'self.Batch = datetime.datetime.now().strftime("%Y%m%d%H%M%S")def send_template_sms(self, phone, data):# 生成sigsignature = self.AccountSid + self.AccountToken + self.Batch# MD5sig = hashlib.md5(signature.encode('utf-8')).hexdigest().upper()# 拼接URLurl = "https://" + self.ServerIP + ":" + self.ServerPort + "/" + self.SoftVersion + "/Accounts/" + self.AccountSid + "/SMS/TemplateSMS?sig=" + sig# 生成authsrc = self.AccountSid + ":" + self.Batchauth = base64.encodebytes(bytes(src, 'utf-8')).strip()# 创建包头headers = {"Accept": 'application/json','Content-Type': 'application/json;charset=utf-8',"Authorization": auth,}# 创建包体body = {"to": "".join(phone),"appId": self.AppId,"templateId": "1",  # 这里由于是测试,所以模板为1"datas": data,}req = requests.post(url, headers=headers, json=body)re_json = json.loads(req.text)  # 最后返回的是json字典print(re_json)return re_json

然后我们就可以进行测试了,最后可以根据返回字典中的"statusCode"来判断是否成功,如果为"000000"则表示发送成功,否则就不成功,如果不成功,可以通过"statusMsg"来查看错误原因。

 if __name__ == '__main__':ronglian = RongLian()ronglian.send_template_sms('13152654178', ('4753', '5'))

通过传递的列表中的两个参数,最后会收到如下短信

【云通讯】您使用的是云通讯短信模板,您的验证码是4753,请于5分钟内正确输入

荣联云发送短信验证码--python3接口相关推荐

  1. Django使用容联云发送短信验证码时提示:172001,网络错误

    尝试用django连接容联云发送短信验证码,运行时出现了以下提示:{'172001':'网络错误'}:在网上查阅资料后得知,是因为python升级到2.7.9之后引入了一个新特性,当打开一个https ...

  2. 容联云发送短信验证码

    setting配置 # 配置jwt的全局认证 REST_FRAMEWORK = {'DEFAULT_AUTHENTICATION_CLASSES':['rest_framework_jwt.authe ...

  3. Go语言初识应用--容联云发送短信验证码、手机号注册

    使用gin框架.gorm映射 所使用的连接容联云参考容联云官方文档,放置到utils中, gin项目结构根据自身需要,大题如下设置: utils--sms.go package main import ...

  4. flask容联云发送短信验证码和异步发送

    容联云地址:https://www.yuntongxun.com/ 获取短信验证码流程图 容联云配置 在容联云官网注册一个账号,发送短信验证码必须使用三个ID ACCOUNT SID   (主账户ID ...

  5. Java调用容联云通讯短信验证码API接口示例

    1.注册账号 https://www.yuntongxun.com/doc.html 注册后点击控制台可以看到你的信息 2.添加测试号码 3.打开文档>Rest API>短信 下载Java ...

  6. python荣联云通讯短信平台

    荣联云通讯短信平台 注册账号 管理模块>>应用管理>>创建应用>>编辑应用>>勾选短信验证码 安装 requests 模块 pip install re ...

  7. luffcc项目-06-使用容联云发送短信、Celery

    一.使用容联云发送短信 https://www.yuntongxun.com/ 目录结构 sms.py import json from .SmsSDK import SmsSDK from djan ...

  8. 记录开发内容demo-java华为云发送短信验证码

    文章目录 前言 一.所需sdk 二.util类 1.demo 2.登录调用 总结 前言 华为云发送短信验证码 一.所需sdk <!--华为云手机获取短信验证码--><dependen ...

  9. 腾讯云发送短信验证码服务

    腾讯云发送短信验证码服务 1.注册腾讯云的账号 在腾讯云的官网:https://cloud.tencent.com/注册一个腾讯云的账号,就是日常的注册流程(这里就不贴图了),不过要实名认证啥的,认证 ...

最新文章

  1. SAP freelancer接SAP项目的几种方法
  2. 07Oracle Database 数据表
  3. 如何判断mysql某个数据库某张表是否存在
  4. 浏览器页面关闭事件获取及处理--onbeforeunload
  5. Android之SwipeRefreshLayout
  6. SqlServer 时间格式化
  7. 真是虚惊一场的i_like_cpp
  8. linux时间树,linux小知识之查看系统时间
  9. 任正非回应退休传闻;董明珠谈直播首秀“失败”;Wine 5.7 发布​| 极客头条...
  10. 利用 Finder 清理Mac旧档案,释放空间
  11. 类Unix下网络工具备忘
  12. 土木保研可以跨计算机专业吗,本科土木跨考计算机专业研究生可行吗?本科土木跨考计算机专业研...
  13. android go官方下载,GoFIT下载
  14. rpm搭建LAMP+Discuz论坛
  15. 深度强化学习训练调参方法
  16. 粗同步 符号同步 matlab,OFDM系统在衰落信道中帧同步算法研究(毕业论文)
  17. Excel 查重小技巧,适用于office2003
  18. GitHub 预览 Copilot,一个 OpenAI 驱动的编码助手
  19. 小身躯,大志向,宇通智能巴士有哪些黑科技
  20. HTML table表格边框为单线的方法

热门文章

  1. 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 B coin
  2. 简单的理解position与anchorPoint
  3. MASM32编程完善SysInfo遇到奇怪故障,真切感受全局变量和局部变量之别……
  4. linux的浏览器大全,Linux下9款浏览器对比
  5. Duilib 和 DuiDesigner 简介
  6. VR,AR,MR的区别与联系
  7. jekenis+tomcat部署更新war失败【踩坑日记】
  8. 常用卫星遥感影像数据源
  9. 你所不知的角落,有人在做没有深度学习的AI
  10. 如何使用CSS简单的制作一个视频网站