首页 > IT职业 > IT生活 > [Python]实现短信验证码的发送
from ronglian_sms_sdk import SmsSDK
import json
# accId = ' 容联云通讯分配的主账号 ID'
accId = '...'
# accToken = ' 容联云通讯分配的主账号 TOKEN'
accToken = '...'
# appId = ' 容联云通讯分配的应用 ID'
appId = '...'
class SendSmsVerificationCode:
""" 发送短信验证码的单例类 """
def __new__(cls, *args, **kwargs):
"""
发送短信验证码单例类的初始化方法
:return: 返回一个发送短信验证码的对象
"""
# 判断类中发送短信验证码的对象 _instance 是否已经存在
# 如果不存在 , 创建一个发送短信验证码的对象 , 并将其作为类属性
if not hasattr(cls, '_instance'):
# 创建发送短信验证码的对象
cls._instance = super(SendSmsVerificationCode, cls).__new__(cls, *args, **kwargs)
# 创建 SmsSDK 对象作为 _instance 的对象属性
cls._instance.sdk = SmsSDK(accId, accToken, appId)
# 如果存在 , 返回发送短信验证码的对象
return cls._instance
def send_message(self, mobile, datas, tid='1'):
"""
发送短信的方法
@params mobile 字符串类型 mobile = ' 手机号 1, 手机号 2'
@params tid tid =跟单网gendan5.com ' 容联云通讯平台创建的模板 ' 默认模板的编号为 1
@params datas 元组类型 第一个参数为验证码 第二个参数为验证码的有效时间 ( 对于短信模板 1)
:return: 返回发送短信后的响应参数
"""
# 发送短信
resp = self.sdk.sendMessage(tid, mobile, datas)
print(json.loads(resp), type(json.loads(resp)))
return resp
# 测试
if __name__ == '__main__':
sendSmsVerificationCode1 = SendSmsVerificationCode()
sendSmsVerificationCode2 = SendSmsVerificationCode()
sendSmsVerificationCode3 = SendSmsVerificationCode()
print(sendSmsVerificationCode1)
print(sendSmsVerificationCode2)
print(sendSmsVerificationCode3)
res = sendSmsVerificationCode1.send_message('...', ('123456', 5), '1')
print(res)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69946337/viewspace-2927566/ ,如需转载,请注明出处,否则将追究法律责任。