SpringBoot实现发送短信的示例代码
一.说明
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、做网站、刚察网络推广、微信小程序、刚察网络营销、刚察企业策划、刚察品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供刚察建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com
在https://office.ucpaas.com/ 注册账号并且认证为个人开发者(需要身份证),这个不难,不多说了
短信的三方平台有许多,对于选择什么平台要根据个人业务场景选择,这里只是DEMO
二.创建平台项目
创建平台项目后可以获得短信基础配置,在调用短信接口时使用

三.创建短信模板
模板动态参数设置规则为{1}{2}{3}...{n} (注意:在调用时参数之间拼接用逗号作为间隔符,这个见代码描述)

四.使用RestTemplate调用短信接口
Spring Boot 版本:2.1.3
项目中使用了阿里的开源框架FastJson,用于JSON格式字符串与JSON对象及javaBean之间的转换 ,Maven依赖如下
org.springframework.boot spring-boot-starter-web 2.1.3.RELEASE com.alibaba fastjson 1.2.45
建立RestTemplate配置类,将RestTemplate注入容器中
/**
* RestTemplate配置类
* @Author Sans
* @CreateTime 2019/4/2 09:55
*/
@Configuration
public class RestTemplateConfig {
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
Controller测试
/**
* 测试短信DEMO
* @Author Sans
* @CreateTime 2019/4/2 09:39
*/
@RestController
@RequestMapping("/sms")
public class TestController {
@Autowired
private RestTemplate restTemplate;
/**
* 单发短信测试
* @Author: Sans
* @CreateTime: 2019/4/2 10:06
*/
@RequestMapping(value = "/sendsmsTest",method = RequestMethod.GET)
public String sendsmsTest(){
//单发短信API
String url = "https://open.ucpaas.com/ol/sms/sendsms";
JSONObject jsonObject = new JSONObject();
//基础配置,在开发平台认证后获取
jsonObject.put("sid","ad024f8****************05d1614");
jsonObject.put("token","5ddbf62d4d****************e27402c");
jsonObject.put("appid","0ceaca4708****************76ec45f");
//模板ID,在开发平台创建模板对应的模板ID
jsonObject.put("templateid", "432116");
//模板对应的参数,参数之间拼接用逗号作为间隔符
jsonObject.put("param", "1315,500");
//要发送的手机号
jsonObject.put("mobile", "用户的手机号");
//用户透传ID,随状态报告返回,可以不填写
jsonObject.put("uid","");
String json = JSONObject.toJSONString(jsonObject);
//使用restTemplate进行访问远程服务
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
HttpEntity httpEntity = new HttpEntity(json, headers);
String result = restTemplate.postForObject(url, httpEntity, String.class);
return result;
}
/**
* 群发短信测试
* @Author: Sans
* @CreateTime: 2019/4/2 11:23
*/
@RequestMapping(value = "/sendBatchsmsTest",method = RequestMethod.GET)
public String sendBatchsmsTest(){
//群发短信API
String url = "https://open.ucpaas.com/ol/sms/sendsms_batch";
JSONObject jsonObject = new JSONObject();
//基础配置,在开发平台认证后获取
jsonObject.put("sid","ad024f8****************05d1614");
jsonObject.put("token","5ddbf62d4d****************e27402c");
jsonObject.put("appid","0ceaca4708****************76ec45f");
//模板ID,在开发平台创建模板对应的模板ID
jsonObject.put("templateid", "432116");
//模板对应的参数,参数之间拼接用逗号作为间隔符
jsonObject.put("param", "1315,500");
//群发多个手机号之间要用逗号作为间隔符
jsonObject.put("mobile", "用户的手机号A,用户的手机号B");
//用户透传ID,随状态报告返回,可以不填写
jsonObject.put("uid","");
String json = JSONObject.toJSONString(jsonObject);
//使用restTemplate进行访问远程服务
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
HttpEntity httpEntity = new HttpEntity(json, headers);
String result = restTemplate.postForObject(url, httpEntity, String.class);
return result;
}
} 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。
网站标题:SpringBoot实现发送短信的示例代码
当前链接:http://www.jxjierui.cn/article/jhhccd.html


咨询
建站咨询
