Springboot集成阿里云短信

目录

  • 1 前言
  • 2 准备工作
    • 2.1 了解流程
    • 2.2 配置信息
  • 2.3 短信签名和模板
      • 2.3.1 签名
      • 2.3.2 模板
      • 2.3.3 存入数据库
  • 3 SDK
  • 4 集成Springboot
    • 4.1 集成
    • 4.2 测试
  • 5 后记
1 前言? 线上系统开发中,短信功能是经常要用到的,比如注册、修改手机号、修改密码时短信验证码等 。我们这里是一个基于Springboot的微服务(SpringCloud Alibaba)项目,选择阿里云的短信接口 。
2 准备工作2.1 了解流程? 登录阿里云短信控制台,了解短信相关知识 。我们这里需要短信发送功能,进一步了解相关API 。
2.2 配置信息
  • 凭证:登录阿里云短信控制台,通过快速学习,我们知道,我们需要创建accessKey,accessKeySecret,即用户的访问凭证,具体如何创建,这里不赘述,自行查阅文档 。
  • 域名endpoint:即我们通过那个地址访问阿里云的短信接口 。
2.3 短信签名和模板? 签名和模板是阿里云短信功能所必须的,下面讲解下签名和模板的添加 。
2.3.1 签名
  • 添加签名:一个账户只能添加一个验证码类型的签名,我已经添加了一个,你们根据需要自行选择,图示:
    Springboot集成阿里云短信

    文章插图
2.3.2 模板
  • 添加模板:
    Springboot集成阿里云短信

    文章插图
  • 【Springboot集成阿里云短信】审核不通过原因:
    • 场景连接:这里场景连接一定要填写公网可访问连接,比如你上线的App、网站网址,或者你的博客等待的 。
    • 模板内容:如需自定义,仔细阅读变量规范、模板申请规范;或者直接说使用模板库中预定义模块,适当修改文字,可满足大部分应用场景 。
  • 效果图示:
    Springboot集成阿里云短信

    文章插图
2.3.3 存入数据库
  • 与短信功能相关的签名、模板,这些信息保存在数据库的配置表中 。
    • 签名:效果就是短信开头的【】中的信息,开发需要用到签名名称signName 。
    • 模板:效果就是短信的内容,开发中需要用到模板名称templateCode,其他信息保存在数据库中 。
3 SDK? 虽然是做了前面的准备工作,但是具体怎么应用还是很模糊,查阅相关技术文档,很多都是旧版本的内容 。这里我们还是通过阿里云的OpenAPI来学习最新的应用技术,这里我们以短信发送为例,图示:
Springboot集成阿里云短信

文章插图
api参数,示例,依赖一目了然,而且是最新版本的内容,下面我们开始集成到项目中 。
4 集成Springboot4.1 集成
  • pom.xml:复制上面依赖信息
    <dependency><groupId>com.aliyun</groupId><artifactId>dysmsapi20170525</artifactId><version>2.0.21</version></dependency>
  • 分析:
    • 短信功能我们项目中多个模块需要用到,我们把短信发送功能封装到AliSms类中,AliSms配置为IOC容器中的bean,位置放置在公共模块中 。
    • 需要用到的配置信息,比如accessKey,secretKey,endpoint,我们在nacos中配置,图示:
      Springboot集成阿里云短信

      文章插图
5 后记? 欢迎交流学习,下面为联系方式和仓库源代码地址
QQ:806797785
源代码仓库地址:https://gitee.com/gaogzhen/coin-exchange

    经验总结扩展阅读