django用云之讯发送短信,redis存短信验证码,设置有效时间

注册云之讯

  • 点击右边的短信模板,新建短信模板

  • 点击开发文件–>短信api–>指定模板单发

  • 安装requests的包: pip install request

  • 首先前端点击发送短信,调用这个路由函数

def sendsms(request):
    smscode = random.randint(1000, 9999)
    phone = request.POST.get('phone')
    data = {
        "sid": "自己的sid",
        "token": "自己用户的token",
        "appid": "自己用户的appid",
        "templateid": "自己用户的templateid",
        "param": smscode,#上面生成的随机验证码
        "mobile": phone,#前端传过来的号码
    }
    # 用云之讯第三方发短信
    res = requests.post('https://open.ucpaas.com/ol/sms/sendsms', json=data)
    res = res.json()
    if res['code'] == '000000':

        # 保存验证码,保存在缓存里面,给一个过期时间
        # 实例化redis
        redis_cli = get_redis_connection()
        redis_cli.set(f'sms-{phone}', smscode, 60)
        return JsonResponse({'res': 'yes'})#发送验证码成功,证明手机号存在
    else:
        return JsonResponse({'res': 'no'})#发送验证码成功,证明手机号不存在


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章