• Django发送短信


    Django发送短信

    1.安装腾讯云SDK

    pip install qcloudsms_py
    

    2.配置文件

    # settings.py
    # 短信应用 SDK AppID
    APP_ID = 1400xxxx  # SDK AppID 以1400开头
    # 短信应用 SDK AppKey
    APP_KEY = "867************"
    # 短信模板ID,需要在短信控制台中申请
    TEMPLATE_ID = 485890  # NOTE: 这里的模板 ID`7839`只是示例,真实的模板 ID 需要在短信控制台中申请
    # 签名
    SMS_SIGN = "腾讯云"  # NOTE: 签名参数使用的是`签名内容`,而不是`签名ID`。这里的签名"腾讯云"只是示例,真实的签名需要在短信控制台中申请
    

    3.功能实现

    # sms.py
    import random
    
    from qcloudsms_py import SmsSingleSender
    
    from . import settings
    from utils.logging import logger
    
    sender = SmsSingleSender(settings.APP_ID, settings.APP_KEY)
    
    
    # 生成验证码
    def get_code(num=6):
        """生成验证码"""
        code = ''
        for i in range(num):
            code += str(random.randint(0, 9))
    
        return code
    
    
    # 发送验证码 需要手机号、验证码、过期时间(min)
    def send_sms(mobile, code, exp):
        try:
            response = sender.send_with_param(
                86,
                mobile,
                settings.TEMPLATE_ID,
                params=(code, exp),
                sign=settings.SMS_SIGN,
                extend="", ext="")
            if response and response.get('result') == 0:
                return True
            msg = response.get('result')  # 失败的状态码
        except Exception as msg:
            pass
        logger.error('短信发送失败: %s' % msg)
        return False
    

    4.__init__.py

    # __init__.py
    from .sms import send_sms, get_code
    
  • 相关阅读:
    Java反射机制之初见端倪
    DB2日常维护之优化 【优化】
    db2pd 分析锁等待 步骤 【监控】
    DB2 UDF
    db2中会导致表处于reorg pending状态的alter语句
    利用Explain分析SQL【监控】
    Hibernate之Hello World篇
    规划下时间 13.0413.08
    神经网络
    ML EX3
  • 原文地址:https://www.cnblogs.com/17vv/p/11963162.html
Copyright © 2020-2023  润新知