ITPub博客

首页 > IT职业 > IT生活 > [Python]实现短信验证码的发送

[Python]实现短信验证码的发送

IT生活 作者:专注的阿熊 时间:2022-12-09 17:55:27 0 删除 编辑

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/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-23

  • 博文量
    410
  • 访问量
    276752