Django阿里云短信验证

文章目录

    • 创建SMS.py文件
    • 阿里云点击控制台搜索短信服务
    • 路由函数

创建SMS.py文件

ACCESS_KEY_ID = "XXX"  #用户AccessKey  需要根据自己的账户修改
ACCESS_KEY_SECRET = "XXX"  #Access Key Secret  需要根据自己的账户修改

class SMS:
    def __init__(self,signName,templateCode):
        self.signName = signName  #签名
        self.templateCode = templateCode  #模板code
        self.client = client = AcsClient(ACCESS_KEY_ID, ACCESS_KEY_SECRET, 'cn-hangzhou')

    def send(self,phone_numbers,template_param):
        request = CommonRequest()
        request.set_accept_format('json')
        request.set_domain('dysmsapi.aliyuncs.com')
        request.set_method('POST')
        request.set_protocol_type('https')  # https | http
        request.set_version('2017-05-25')
        request.set_action_name('SendSms')

        request.add_query_param('RegionId', "cn-hangzhou")
        request.add_query_param('PhoneNumbers', phone_numbers)
        request.add_query_param('SignName', self.signName)
        request.add_query_param('TemplateCode', self.templateCode)
        request.add_query_param('TemplateParam', template_param)
        response = self.client.do_action_with_exception(request)
        return response
# 短语发送对象
sms = SMS("签名名称","模板CODE")

阿里云点击控制台搜索短信服务

Django阿里云短信验证_第1张图片
Django阿里云短信验证_第2张图片
Django阿里云短信验证_第3张图片

Django阿里云短信验证_第4张图片

路由函数

def send_sms(request):
    from App.SMS import sms
    # 模板参数一定要是这个格式
    # 一定要注意模板变量number
    # 生成随机验证码
    para = "{'number':%d}"%(randint(1000,100000))
    res = sms.send('手机号',para)
    return HttpResponse("发送成功")

你可能感兴趣的:(Django)