yangjiaoshou

开通腾讯云短信

"""
1、官网注册实名账号:https://cloud.tencent.com
2、选取短信服务创建短信应用
3、申请签名与短信模板 - 通过微信公众号申请
4、帮助文档:https://cloud.tencent.com/document/product/382/43196
"""

腾讯云短信的二次封装:

libs/txsms/settings.py

# 短信应用 SDK AppID - SDK AppID 以1400开头
APP_ID = ...
# 短信应用 SDK AppKey
APP_KEY = "..."
# 短信模板ID,需要在短信控制台中申请
TEMPLATE_ID = ...
# 签名 - 是`签名内容`,而不是`签名ID`
SMS_SIGN= "..."
# 电话前缀
MOBILE_PREFIX = 86

libs/txsms/sms.py

# 通过MacOS ssl安全认证
import ssl
ssl._create_default_https_context = ssl._create_unverified_context

# 获取验证码的功能
import random
def get_code():
    code = \'\'
    for i in range(4):
        code += str(random.randint(0, 9))
    return code

# 短信发送者
from qcloudsms_py import SmsSingleSender
from .settings import *
sender = SmsSingleSender(APP_ID, APP_KEY)

# 发送验证码
from utils.logging import logger
def send_sms(mobile, code, exp):
    try:
        # 发送短信
        response = sender.send_with_param(MOBILE_PREFIX, mobile, TEMPLATE_ID, (code, exp), sign=SMS_SIGN, extend="", ext="")
        # 成功
        if response and response[\'result\'] == 0:
            return True
        # 失败
        logger.warning(\'%s - %s\' % (\'短信发送失败\', response[\'result\']))
    except Exception as e:
        # 异常
        logger.warning(\'%s - %s\' % (\'短信发送失败\', e))
    return False

libs/txsms/__init__.py

# 包对外提供的功能方法
from .sms import get_code, send_sms

测试使用:

from libs import txsms
code = txsms.get_code()
print(code)
print(txsms.send_sms(\'电话\', code, 5))

 

分类:

技术点:

相关文章:

  • 2021-12-31
  • 2022-01-01
  • 2021-12-05
  • 2021-11-23
  • 2021-12-15
  • 2021-11-23
  • 2021-12-15
猜你喜欢
  • 2021-12-05
  • 2021-12-05
  • 2021-12-15
  • 2021-12-05
  • 2021-12-05
  • 2021-12-15
相关资源
相似解决方案