zoukankan      html  css  js  c++  java
  • Day80 使用第三方(腾讯云)短信验证码接口

    第三方(腾讯云)短信验证码接口

    腾讯云短信功能链接:

    https://cloud.tencent.com/product/sms

    腾讯云短信功能API文档:

    https://cloud.tencent.com/document/product/382/38763

    具体教程自行百度

    需要先注册一个腾讯云的开发者账号
    创建短信应用
    创建短信签名和模板
    
    提示:新用户可以领取100条免费短信
    

    短信接口二次封装

    # settings
    # 短信应用 SDK AppID
    appid = 1400304547  # SDK AppID 以1400开头
    # 短信应用 SDK AppKey
    appkey = "0beef3d647e5c1336192f2e7d873fce4"
    # 短信模板ID,需要在短信控制台中申请
    template_id = 516903  # NOTE: 这里的模板 ID`7839`只是示例,真实的模板 ID 需要在短信控制台中申请
    # 签名
    sms_sign = "IT咸鱼之家"  # NOTE: 签名参数使用的是`签名内容`,而不是`签名ID`。这里的签名"腾讯云"只是示例,真实的签名需要在短信控制台中申请
    
    
    # sms.py
    import random
    
    
    def get_sms_code():
        code = ''
        for i in range(6):
            code += str(random.randint(0, 9))
        return code
    
    
    from qcloudsms_py import SmsSingleSender
    from .settings import *
    
    from utils.logging import logger
    
    sender = SmsSingleSender(appid, appkey)
    
    def send_sms(mobile, code, exp):
        params = [code, exp]  # 当模板没有参数时,`params = []`
        try:
            response = sender.send_with_param(86, mobile,
                                              template_id, params, sign=sms_sign, extend="", ext="")
            if response or response.get('result') == 0:
                return True
            logger.error('短信发送失败,状态码: %s, 错误信息: %s' % (response.get('result'), response.get('errmsg')))
            return False
        except Exception as e:
            logger.error('短信发送异常,异常信息: %s' % e)
    
  • 相关阅读:
    「ROI 2019 Day1」运输 20/19
    「ROI 2018 Day 2」无进位加法
    「ROI 2018 Day 1」量子隐形传态
    「ROI 2018 Day 2」快速排序
    「ROI 2018 Day 1」Innophone (分块+斜率优化)
    「ROI 2017 Day 1」虎 (计算几何)
    [BJ United Round #3] 押韵 [学习笔记]
    「CEOI2020」象棋世界
    CF1375G
    CF1392(div1+div2)
  • 原文地址:https://www.cnblogs.com/2222bai/p/12163929.html
Copyright © 2011-2022 走看看