Django发送短信

settings.py中设置

python 复制代码
##################################容联云短信平台账号信息##############################
#容联云查看信息
RONGLIAN_ACC_ID = '......'
RONGLIAN_ACC_TOKEN ='......'
RONGLIAN_APP_ID = '......'
#####################################################################

views中

python 复制代码
	from ronglian_sms_sdk import SmsSDK
    
    from django.conf import settings
    sms_sdk = SmsSDK(
                accId=settings.RONGLIAN_ACC_ID,
                accToken=settings.RONGLIAN_ACC_TOKEN,
                appId=settings.RONGLIAN_APP_ID
                     )
     #tid测试状态下只能为'1'
    #mobile,多个号码以英文逗号分割
    #data,发送的内容和时长,必须是元组
    verify_code = random.randint(1000,9999)


    expire = 10
    res = sms_sdk.sendMessage(tid ='1', mobile=phone,datas=(verify_code,expire))
    res_dict = json.loads(res)
    statusCode = res_dict.get('statusCode')
    statusMsg =res_dict.get('statusMsg')
    if statusCode=='000000':
        ####################写入Redis###########################
        from django_redis import get_redis_connection
        # 默认连接配置文件中的库
        redis_conn = get_redis_connection(alias='sms')
        redis_conn.set(f'sms_{phone}', verify_code, ex=expire * 60)
        ########################################################

        context = {
            'code':200,
            'data':'发送短信成功'
        }
    else:
        context = {
            'code': statusCode,
            'data': statusMsg
        }
    return JsonResponse(context)
相关推荐
踩坑小念3 分钟前
秒杀场景下如何处理redis扣除状态不一致问题
数据库·redis·分布式·缓存·秒杀
萧曵 丶44 分钟前
MySQL 语句书写顺序与执行顺序对比速记表
数据库·mysql
Wiktok1 小时前
MySQL的常用数据类型
数据库·mysql
曹牧2 小时前
Oracle 表闪回(Flashback Table)
数据库·oracle
J_liaty2 小时前
Redis 超详细入门教程:从零基础到实战精通
数据库·redis·缓存
m0_706653232 小时前
用Python批量处理Excel和CSV文件
jvm·数据库·python
山岚的运维笔记2 小时前
SQL Server笔记 -- 第15章:INSERT INTO
java·数据库·笔记·sql·microsoft·sqlserver
Lw老王要学习3 小时前
CentOS 7.9达梦数据库安装全流程解析
linux·运维·数据库·centos·达梦
qq_423233903 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python
Wasim4043 小时前
【渗透测试】SQL注入
网络·数据库·sql