使用容联云获取短信验证码

容联云地址:https://www.yuntongxun.com/

获取短信验证码流程图

容联云配置

在容联云官网注册一个账号,发送短信验证码必须使用三个ID

  1. ACCOUNT SID   (主账户ID)
  2. AUTH TOKEN     (账户授权令牌)
  3. AppID                  (AppID)

添加测试手机号 ( 必填 )

安装容联云SDK

pip install ronglian_sms_sdk

 发送短信调用配置

import json
from ronglian_sms_sdk import SmsSDK


def send_message(sms_code,mobile,expire=5):
    sms_sdk = SmsSDK(accId='8aaf03013***********************',
                     appId='8aaf07087f77bf96017fddbf5f3e3334',
                     accToken='b2033c3b6d3b4dd6b931a138a8246af1')
    tid = '1'
    datas = ("%s"%sms_code,"%s"%expire)

    res = sms_sdk.sendMessage(tid=tid,mobile=mobile,datas=datas)
    resd=json.loads(res)
    return resd

发送验证码视图 

 这里是将手机号作为存入redis时的key使用

import redis
from flask import jsonify
from flask_restful import Resource,reqparse


# 生成并存储短信验证码

class Scode(Resource):
    def get(self):
        paser = reqparse.RequestParser()
        paser.add_argument('mobile')

        args = paser.parse_args()
        mobile = args.get('mobile')

        sms_code = random.randint(100000,999999)
        send_message(sms_code,mobile)
        
        # 将验证码存入redis中
        r = redis.Redis(host='localhost',db=0,port=6379)
        sms_key = "sms_code:%s"%mobile
        r.set(sms_key,sms_code,ex=300)

        print("<<<验证码>>>",sms_code)

        return jsonify(msg = "验证码已发送,请注意查收",code=200)

触发获取验证码函数即可发送成功 

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在SSM架构中,实现调用容联云API发送短信验证码的步骤如下: 1. 创建实体类: 在实体类中定义发送短信所需的参数,例如手机号码、验证码等。 ```java public class SmsEntity { private String mobile; // 手机号码 private String code; // 验证码 // 省略getter和setter方法 } ``` 2. 创建DAO层: 在DAO层中定义发送短信的方法,该方法通过调用容联云API实现短信发送功能。 ```java @Repository public interface SmsDao { void sendSms(SmsEntity smsEntity); } ``` 3. 创建业务层: 在业务层中调用DAO层的方法,处理业务逻辑。 ```java @Service public class SmsService { @Autowired private SmsDao smsDao; public void sendSms(SmsEntity smsEntity) { // 处理业务逻辑,例如生成验证码等 // 调用DAO层发送短信 smsDao.sendSms(smsEntity); } } ``` 4. 创建控制层: 在控制层中处理请求,并调用业务层方法。 ```java @Controller @RequestMapping("/sms") public class SmsController { @Autowired private SmsService smsService; @RequestMapping("/send") public String sendSms(SmsEntity smsEntity) { // 处理请求参数 // 调用业务层发送短信 smsService.sendSms(smsEntity); // 返回结果页面 return "result"; } } ``` 5. 创建视图层: 在HTML中创建表单,将用户输入的手机号码和验证码提交给控制层。 ```html <form action="/sms/send" method="post"> <input type="text" name="mobile" placeholder="手机号码" required> <input type="text" name="code" placeholder="验证码" required> <button type="submit">发送短信</button> </form> ``` 6. 数据库操作: 如果需要将发送的短信记录存储到数据库中,可以在DAO层中添加相应的数据库操作。 7. 调用容联云API: 在DAO层的`sendSms`方法中调用容联云API发送短信。 ```java @Repository public interface SmsDao { void sendSms(SmsEntity smsEntity) { // 调用容联云API发送短信 // 代码略,根据容联云API文档进行实现 } } ``` 以上是基于SSM架构实现调用容联云API发送短信验证码的演示代码。请根据实际需求和容联云API文档进行具体实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值