springboot2.x 接入阿里云市场短信发送的实现
1.短信平台购买次数地址
https://market.aliyun.com/products/57000002/cmapi00046920.html
提供测试模板、免审核、测试成本更低
2.测试学习使用的话,3块钱75多次够用了
3.购买后在跳转成功页面记录
AppSecret、key、code
4.记录模板ID
5.上代码环节
@Configuration public class RestTemplateConfig { @Bean public RestTemplate restTemplate(ClientHttpRequestFactory requestFactory){ return new RestTemplate(requestFactory); } @Bean public ClientHttpRequestFactory simpleClientHttpRequestFactory(){ SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory(); factory.setReadTimeout(10000); factory.setConnectTimeout(10000); return factory; } }
增加配置
@ConfigurationProperties(prefix = "sms") @Configuration @Data public class SmsConfig { private String templateId; private String appCode; }
application.yml
发送类
@Component @Slf4j public class SmsComponent { /** * 发送地址 */ private static final String URL_TEMPLATE = "https://jmsms.market.alicloudapi.com/sms/send?mobile=%s&templateId=%s&value=%s"; @Autowired private RestTemplate restTemplate; @Autowired private SmsConfig smsConfig; /** * 发送短信验证码 * @param to * @param templateId * @param value */ public void send(String to,String templateId,String value){ String url = String.format(URL_TEMPLATE,to,templateId,value); HttpHeaders headers = new HttpHeaders(); headers.set("Authorization","APPCODE "+smsConfig.getAppCode()); HttpEntity entity = new HttpEntity<>(headers); ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.POST, entity, String.class); log.info("url={},body={}",url,response.getBody()); if(response.getStatusCode().is2xxSuccessful()){ log.info("发送短信验证码成功"); }else { log.error("发送短信验证码失败:{}",response.getBody()); } } }
测试类验证
@RunWith(SpringRunner.class) @SpringBootTest(classes = AccountApplication.class) @Slf4j public class SmsTest { @Autowired private SmsComponent smsComponent; @Autowired private SmsConfig smsConfig; @Test public void testSendSms(){ smsComponent.send("138XXXXXXX",smsConfig.getTemplateId(),"666888"); } }
发送成功咯
到此这篇关于springboot2.x 接入阿里云市场短信发送的实现的文章就介绍到这了,更多相关springboot 阿里云短信发送内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring如何根据条件创建bean,@Conditional注解使用方式
这篇文章主要介绍了Spring如何根据条件创建bean,@Conditional注解使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06springsecurity 登录认证流程分析一(ajax)
这篇文章主要介绍了springsecurity 登录认证一(ajax篇),本文通过实例代码图文相结合给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧2024-08-08Java异步编程之Callbacks与Futures模型详解
这篇文章主要为大家详细介绍了Java异步编程中Callbacks与Futures模型的使用,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下2023-03-03springboot+vue实现websocket配置过程解析
这篇文章主要介绍了springboot+vue实现websocket配置过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-04-04SpringBoot常用注解@RestControllerAdvice详解
这篇文章主要介绍了SpringBoot常用注解@RestControllerAdvice详解,@RestControllerAdvice是一个组合注解,由@ControllerAdvice、@ResponseBody组成,而@ControllerAdvice继承了@Component,因此@RestControllerAdvice本质上是个Component,需要的朋友可以参考下2024-01-01
最新评论