本次介绍的是使用云通讯来发送短信验证码
用于发送短信(或语音)验证码的第三方平台包含以下四个内容:
1.云通讯:http://www.yuntongxun.com/(这是官方网站)
2.登录注册+实名认证
3.文档及Demo地址:http://www.yuntongxun.com/doc/ready/demo/1_4_1_2.html
4.云通讯相关参数
首先我们进入官网点击注册
他们的验证码,一般都是语音的,大家注意,别吓着!
当我们注册成功登录后,会 有一个弹框,不用管,直接点叉就可以了,他们会送我们8块钱的
进入的界面如下
随后点击了管理后,可以看到第二列的下面有测试号码点击即可
添加的时候会给填写的手机号打电话说验证码,(写自己刚才注册时写的也可以)
再然后就是实名认证了,电脑上的认证比较麻烦,我建议可以使用微信扫码关注公众号进行认证(大概24小时内完成)
如图
在电脑上认证可能会出现相片不符合的情况,微云扫码后比较简单(大家进去就看明白了,要用手持身份证的片)
还有配置短信验证如下:
将从项目资料文件中的 CCPRestSDK.py 和 xmltojson.py 拷贝至 info\lib\yuntongxun 目录下
在info\lib\yuntongxun 目录中,新建文件sms.py,用于封装发送短信的方法
from .CCPRestSDK import REST
# 说明:主账号,登陆云通讯网站后,可在"控制台-应用"中看到开发者主账号ACCOUNT SID
accountSid = 'xxxxxx'
# 说明:主账号Token,登陆云通讯网站后,可在控制台-应用中看到开发者主账号AUTH TOKEN
accountToken = 'xxxxxx'
# 请使用管理控制台首页的APPID或自己创建应用的APPID
appId = 'xxxxxxx'
# 说明:请求地址,生产环境配置成app.cloopen.com
serverIP = 'sandboxapp.cloopen.com'
# 说明:请求端口 ,生产环境为8883
serverPort = '8883'
# 说明:REST API版本号保持不变
softVersion = '2013-12-26'
创建CCP的单例实例
class CCP(object):
"""发送短信的辅助类"""
def __new__(cls, *args, **kwargs):
# 判断是否存在类属性_instance,_instance是类CCP的唯一对象,即单例
if not hasattr(CCP, "instance"):
cls.instance = super(CCP, cls).__new__(cls, *args, **kwargs)
cls.instance.rest = REST(serverIP, serverPort, softVersion)
cls.instance.rest.setAccount(accountSid, accountToken)
cls.instance.rest.setAppId(appId)
return cls.instance
def send_template_sms(self, to, datas, temp_id):
"""发送模板短信"""
# @param to 手机号码
# @param datas 内容数据 格式为数组 例如:{'12','34'},如不需替换请填 ''
# @param temp_id 模板Id
result = self.rest.sendTemplateSMS(to, datas, temp_id)
# 如果云通讯发送短信成功,返回的字典数据result中statuCode字段的值为"000000"
if result.get("statusCode") == "000000":
# 返回0 表示发送短信成功
return 0
else:
# 返回-1 表示发送失败
return -1