当前位置: 首页 > news >正文

湖南省住房和建设厅网站/南京最新消息今天

湖南省住房和建设厅网站,南京最新消息今天,国外网站开发,计算机网络培训速成班在 Spring Boot 中实现发送短信通常借助第三方短信服务提供商,如阿里云短信服务、腾讯云短信服务、华为云短信服务等。下面以阿里云短信服务为例,详细介绍在 Spring Boot 项目中实现发送短信的步骤。 1. 开通阿里云短信服务并获取相关信息 注册阿里云账…

在 Spring Boot 中实现发送短信通常借助第三方短信服务提供商,如阿里云短信服务、腾讯云短信服务、华为云短信服务等。下面以阿里云短信服务为例,详细介绍在 Spring Boot 项目中实现发送短信的步骤。

1. 开通阿里云短信服务并获取相关信息

  • 注册阿里云账号:如果还没有阿里云账号,需要先进行注册。
  • 开通短信服务:登录阿里云控制台,开通短信服务,并完成相关的配置,如签名、模板的申请和审核。
  • 获取 AccessKey:在阿里云控制台的 AccessKey 管理页面创建并获取 AccessKey ID 和 AccessKey Secret,这两个信息用于身份验证。

2. 添加依赖

在 pom.xml 中添加阿里云短信服务的 Java SDK 依赖:

收起

xml

<dependencies><!-- Spring Boot Web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 阿里云短信服务 SDK --><dependency><groupId>com.aliyun</groupId><artifactId>dysmsapi20170525</artifactId><version>2.0.22</version></dependency><dependency><groupId>com.aliyun</groupId><artifactId>tea-openapi</artifactId><version>0.2.1</version></dependency>
</dependencies>

3. 配置阿里云短信服务信息

在 application.properties 或 application.yml 中配置阿里云短信服务的相关信息:

收起

properties

aliyun.sms.access-key-id=your-access-key-id
aliyun.sms.access-key-secret=your-access-key-secret
aliyun.sms.sign-name=your-sign-name
aliyun.sms.template-code=your-template-code

将 your-access-key-idyour-access-key-secret 替换为你在阿里云获取的 AccessKey ID 和 AccessKey Secretyour-sign-name 替换为申请通过的短信签名,your-template-code 替换为申请通过的短信模板代码。

4. 创建短信发送工具类

创建一个工具类来封装短信发送的逻辑:

收起

java

import com.aliyun.dysmsapi20170525.Client;
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.teaopenapi.models.Config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;import java.util.HashMap;
import java.util.Map;@Component
public class SmsSender {@Value("${aliyun.sms.access-key-id}")private String accessKeyId;@Value("${aliyun.sms.access-key-secret}")private String accessKeySecret;@Value("${aliyun.sms.sign-name}")private String signName;@Value("${aliyun.sms.template-code}")private String templateCode;public boolean sendSms(String phoneNumber, Map<String, String> templateParams) {try {// 创建 Config 对象并设置 AccessKey ID 和 AccessKey SecretConfig config = new Config().setAccessKeyId(accessKeyId).setAccessKeySecret(accessKeySecret);// 访问的域名config.endpoint = "dysmsapi.aliyuncs.com";// 创建短信服务客户端Client client = new Client(config);// 创建短信发送请求对象SendSmsRequest sendSmsRequest = new SendSmsRequest().setPhoneNumbers(phoneNumber).setSignName(signName).setTemplateCode(templateCode).setTemplateParam(com.alibaba.fastjson.JSON.toJSONString(templateParams));// 发送短信SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);// 判断短信是否发送成功return "OK".equals(sendSmsResponse.getBody().getCode());} catch (Exception e) {e.printStackTrace();return false;}}
}

5. 创建控制器进行测试

创建一个控制器类,在其中调用短信发送工具类来发送短信:

收起

java

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;@RestController
public class SmsController {@Autowiredprivate SmsSender smsSender;@GetMapping("/sendSms")public String sendSms(@RequestParam String phoneNumber) {// 假设短信模板中有一个参数 code 用于传递验证码Map<String, String> templateParams = new HashMap<>();templateParams.put("code", "123456");boolean result = smsSender.sendSms(phoneNumber, templateParams);if (result) {return "短信发送成功";} else {return "短信发送失败";}}
}

6. 测试短信发送功能

启动 Spring Boot 应用程序,访问 http://localhost:8080/sendSms?phoneNumber=your-phone-number,将 your-phone-number 替换为实际要接收短信的手机号码。如果一切配置正确,该手机号码将收到一条包含验证码的短信。

注意事项

  • 确保申请的短信签名和模板已通过审核,否则短信无法发送成功。
  • 不同的短信模板可能有不同的参数要求,需要根据实际情况修改 templateParams 中的参数。
  • 阿里云短信服务有一定的使用限制和费用,需要关注相关的使用规则和计费标准。
http://www.whsansanxincailiao.cn/news/32043684.html

相关文章:

  • 揭阳市seo点击排名软件价格/seo的英文全称是什么
  • 如何拷贝网站代码/淘宝一个关键词要刷多久
  • 网站302跳转/免费网页制作网站
  • 咸阳北京网站建设/公司网站建设开发
  • 品牌网站建设 意义/线上营销活动案例
  • 便宜域名/成都seo经理
  • 怎么创建个人的网站/企业网站模板免费
  • 做网站一般用什么 语言/北京seo服务行者
  • 秘密花园app/网站排名优化公司哪家好
  • 展览中心网站建设/seo优化排名软件
  • 探测网站是什么程序做的/百度商店应用市场
  • 中国网站名/平台运营
  • 万象城网站建设/乔拓云建站平台
  • 江苏省政府门户网站建设/百度关键词查询网站
  • wordpress搭建没域名/重庆seo整站优化外包服务
  • 商业网点和商铺的区别/宁波网络推广优化方案
  • 重庆网站建设套餐/网站推广的策略
  • 景征网站建设/网址缩短在线生成器
  • 建网站/厦门站长优化工具
  • 网站公众号信息化建设工作计划/百度搜索关键词热度
  • 用net做新闻网站/十大搜索引擎入口
  • 宝安网站设计哪家最好/广州seo招聘
  • 提升网站权重的方法/湖南seo优化
  • 网站建设 seo模块/陕西省人民政府
  • 可以免费做网站吗/什么是网络营销工具
  • 阳山做网站/世界互联网峰会
  • 知名做网站费用/百度游戏中心
  • 网站推广网/金戈枸橼酸西地那非
  • 如何做购物网站/推广的十种方式
  • 网站修改方案/百度极速版下载