欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot實現(xiàn)發(fā)送短信的示例代碼

 更新時間:2019年04月23日 10:00:59   作者:Sans_  
這篇文章主要介紹了SpringBoot實現(xiàn)發(fā)送短信的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一.說明

https://office.ucpaas.com/ 注冊賬號并且認證為個人開發(fā)者(需要身份證),這個不難,不多說了

短信的三方平臺有許多,對于選擇什么平臺要根據(jù)個人業(yè)務(wù)場景選擇,這里只是DEMO

二.創(chuàng)建平臺項目

創(chuàng)建平臺項目后可以獲得短信基礎(chǔ)配置,在調(diào)用短信接口時使用

三.創(chuàng)建短信模板

模板動態(tài)參數(shù)設(shè)置規(guī)則為{1}{2}{3}...{n} (注意:在調(diào)用時參數(shù)之間拼接用逗號作為間隔符,這個見代碼描述)

四.使用RestTemplate調(diào)用短信接口

Spring Boot 版本:2.1.3

項目中使用了阿里的開源框架FastJson,用于JSON格式字符串與JSON對象及javaBean之間的轉(zhuǎn)換 ,Maven依賴如下

<dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <version>2.1.3.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.45</version>
    </dependency>
</dependencies>

建立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;

  /**
   * 單發(fā)短信測試
   * @Author: Sans
   * @CreateTime: 2019/4/2 10:06
   */
  @RequestMapping(value = "/sendsmsTest",method = RequestMethod.GET)
  public String sendsmsTest(){
    //單發(fā)短信API
    String url = "https://open.ucpaas.com/ol/sms/sendsms";
    JSONObject jsonObject = new JSONObject();
    //基礎(chǔ)配置,在開發(fā)平臺認證后獲取
    jsonObject.put("sid","ad024f8****************05d1614");
    jsonObject.put("token","5ddbf62d4d****************e27402c");
    jsonObject.put("appid","0ceaca4708****************76ec45f");
    //模板ID,在開發(fā)平臺創(chuàng)建模板對應(yīng)的模板ID
    jsonObject.put("templateid", "432116");
    //模板對應(yīng)的參數(shù),參數(shù)之間拼接用逗號作為間隔符
    jsonObject.put("param", "1315,500");
    //要發(fā)送的手機號
    jsonObject.put("mobile", "用戶的手機號");
    //用戶透傳ID,隨狀態(tài)報告返回,可以不填寫
    jsonObject.put("uid","");
    String json = JSONObject.toJSONString(jsonObject);
    //使用restTemplate進行訪問遠程服務(wù)
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
    HttpEntity<String> httpEntity = new HttpEntity<String>(json, headers);
    String result = restTemplate.postForObject(url, httpEntity, String.class);
    return result;
  }

  /**
   * 群發(fā)短信測試
   * @Author: Sans
   * @CreateTime: 2019/4/2 11:23
   */
  @RequestMapping(value = "/sendBatchsmsTest",method = RequestMethod.GET)
  public String sendBatchsmsTest(){
    //群發(fā)短信API
    String url = "https://open.ucpaas.com/ol/sms/sendsms_batch";
    JSONObject jsonObject = new JSONObject();
    //基礎(chǔ)配置,在開發(fā)平臺認證后獲取
    jsonObject.put("sid","ad024f8****************05d1614");
    jsonObject.put("token","5ddbf62d4d****************e27402c");
    jsonObject.put("appid","0ceaca4708****************76ec45f");
    //模板ID,在開發(fā)平臺創(chuàng)建模板對應(yīng)的模板ID
    jsonObject.put("templateid", "432116");
    //模板對應(yīng)的參數(shù),參數(shù)之間拼接用逗號作為間隔符
    jsonObject.put("param", "1315,500");
    //群發(fā)多個手機號之間要用逗號作為間隔符
    jsonObject.put("mobile", "用戶的手機號A,用戶的手機號B");
    //用戶透傳ID,隨狀態(tài)報告返回,可以不填寫
    jsonObject.put("uid","");
    String json = JSONObject.toJSONString(jsonObject);
    //使用restTemplate進行訪問遠程服務(wù)
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
    HttpEntity<String> httpEntity = new HttpEntity<String>(json, headers);
    String result = restTemplate.postForObject(url, httpEntity, String.class);
    return result;
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot使用freemarker導(dǎo)出word文件方法詳解

    SpringBoot使用freemarker導(dǎo)出word文件方法詳解

    這篇文章主要介紹了SpringBoot使用freemarker導(dǎo)出word文件方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-11-11
  • 詳解在Spring3中使用注解(@Scheduled)創(chuàng)建計劃任務(wù)

    詳解在Spring3中使用注解(@Scheduled)創(chuàng)建計劃任務(wù)

    本篇文章主要介紹了詳解在Spring3中使用注解(@Scheduled)創(chuàng)建計劃任務(wù),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Java代碼如何判斷l(xiāng)inux系統(tǒng)windows系統(tǒng)

    Java代碼如何判斷l(xiāng)inux系統(tǒng)windows系統(tǒng)

    這篇文章主要介紹了Java代碼如何判斷l(xiāng)inux系統(tǒng)windows系統(tǒng)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • SpringController返回值和異常自動包裝的問題小結(jié)

    SpringController返回值和異常自動包裝的問題小結(jié)

    今天遇到一個需求,在不改動原系統(tǒng)代碼的情況下,將Controller的返回值和異常包裝到一個統(tǒng)一的返回對象中去,下面通過本文給大家介紹SpringController返回值和異常自動包裝的問題,需要的朋友可以參考下
    2024-03-03
  • 淺談spring的重試機制無效@Retryable@EnableRetry

    淺談spring的重試機制無效@Retryable@EnableRetry

    這篇文章主要介紹了淺談spring的重試機制無效@Retryable@EnableRetry,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 在MyBatisPlus中使用@TableField完成字段自動填充的操作

    在MyBatisPlus中使用@TableField完成字段自動填充的操作

    這篇文章主要介紹了在MyBatisPlus中使用@TableField完成字段自動填充的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java抽象類原理與用法實例詳解

    Java抽象類原理與用法實例詳解

    這篇文章主要介紹了Java抽象類原理與用法,結(jié)合實例形式詳細分析了Java抽象類相關(guān)概念、原理、定義、使用方法及操作注意事項,需要的朋友可以參考下
    2019-11-11
  • springboot添加https服務(wù)器的方法

    springboot添加https服務(wù)器的方法

    這篇文章主要介紹了springboot添加https服務(wù)器的方法,小編在android開發(fā)中發(fā)現(xiàn)很多app都是https訪問的,為了方便測試,自己搭建了一個https服務(wù)器,需要的朋友可以參考下
    2017-11-11
  • Jackson序列化丟失泛型的解決

    Jackson序列化丟失泛型的解決

    這篇文章主要介紹了Jackson序列化丟失泛型的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java?Chassis3熔斷機制的改進路程技術(shù)解密

    Java?Chassis3熔斷機制的改進路程技術(shù)解密

    這篇文章主要介紹了Java?Chassis?3技術(shù)解密之熔斷機制的改進路程實例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01

最新評論