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

Java對接阿里云短信服務保姆級教程(新手秒會)

 更新時間:2024年12月23日 09:55:03   作者:周小倫_  
這篇文章主要介紹了如何在阿里云上申請短信服務以及如何使用Java代碼進行對接,包括申請資質、簽名和模板,以及編寫Java代碼整合成工具類進行調用的步驟,需要的朋友可以參考下

一,阿里云部分

登錄阿里云搜索短信服務進入控制臺,進行下面五個步驟的申請(默認已開通服務)

1. 申請資質

資質是申請簽名的實名化信息,需要提供企業(yè)的信息和個人信息

2. 申請簽名

簽名就是短信的標題,如下圖中的【飛書】

要注意,每個帶星號的參數(shù)都要慎重填寫,注意關鍵信息節(jié)點(這里踩過坑,由于填信息不仔細,審核不通過很耽誤時間) 

3. 申請模版

模板就是短信的內容,如下圖

至此,阿里云方面的準備工作算是基本完成了!

注:

  • 短信服務已開通,套餐要有余量
  • 簽名要配置好
  • 簽名對應的模板配好
  • 接下來是寫Java 來對接

二,Java 代碼部分

  • 可以點擊此鏈接進入短信接入的文檔 點擊調試可以生成示例代碼(如下圖)

    必填參數(shù)

    注:

  • 上面生成的代碼太亂,可以使用我下面的代碼,整合成短信工具類,將需要的信息改為自己的即可

  • 導入依賴

        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>dysmsapi20170525</artifactId>
            <version>3.0.0</version>
        </dependency>
        
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.5.0</version>
        </dependency>

        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-dysmsapi</artifactId>
            <version>2.1.0</version>
        </dependency>
  • 工具類
public class SmsUtil {

    private static final String ACCESS_KEY_ID = "";//AccessKey自己賬號的
    private static final String ACCESS_KEY_SECRET = "";
    private static final String ENDPOINT = "dysmsapi.aliyuncs.com";//固定死
    private static final String SIGNNAME = "";//簽名名稱
    private static final String TCODE = "";//模版的編號

    public static String  sendSms(String phoneNumbers) throws Exception {

        String code=generateVerificationCode();

        Config config = new Config()
                .setAccessKeyId(ACCESS_KEY_ID)
                .setAccessKeySecret(ACCESS_KEY_SECRET)
                .setEndpoint(ENDPOINT);

        Client client = new Client(config);
        SendSmsRequest sendSmsRequest = new SendSmsRequest()
                .setPhoneNumbers(phoneNumbers)
                .setSignName(SIGNNAME)
                .setTemplateCode(TCODE)
                //此處是設計模版的時候預留的變量$[code]就驗證碼,用下面的隨機生成4位數(shù)字傳入
                .setTemplateParam(String.format("{\"code\":\"%s\"}", code));

        try {
            SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest);
            return code;
        } catch (TeaException error) {
            return "失敗";
        }
    }

    /**
     * 驗證碼隨機四位
     */
    private static String generateVerificationCode() {
        // 生成四位數(shù)字驗證碼
        Random random = new Random();
        int code = random.nextInt(10000); // 隨機生成 0 到 9999 的整數(shù)
        return String.format("%04d", code); // 保證生成的是四位數(shù)字,不足四位時前面補0
    }
}
  • controller調用
    /**
     * 發(fā)送短信
     * @param phone
     * @return
     */
    @RequestMapping("sendCode")
    public ResultVO sendMessage(@RequestParam String phone){
        try {
            String code = SmsUtil.sendSms(phone);
            //使用redis 存起來,過期時間300秒,用于登錄時拿出來驗證
            redisTemplate.opsForValue().set("yzm"+phone,code,300, TimeUnit.SECONDS);

            return ResultUtil.success("驗證碼發(fā)送成功");
        } catch (Exception e) {
            return ResultUtil.error("驗證碼發(fā)送失敗");
        }
    }

完結!??!

總結

到此這篇關于Java對接阿里云短信服務保姆級教程的文章就介紹到這了,更多相關Java對接阿里云短信服務內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Spring中的@Transactional注解使用詳解

    Spring中的@Transactional注解使用詳解

    這篇文章主要介紹了Spring中的@Transactional注解使用詳解,@Transactional 是一個注解,用于在 Spring 框架中管理事務的聲明式事務管理機制,它可以應用于方法或類級別,并指示方法或類在執(zhí)行時應該被包裝在一個事務中,需要的朋友可以參考下
    2024-01-01
  • 關于json序列化(javaBean轉Json的細節(jié)處理)

    關于json序列化(javaBean轉Json的細節(jié)處理)

    這篇文章主要介紹了關于json序列化(javaBean轉Json的細節(jié)處理),具有很好的參考價值,希望對大家有所幫助。
    2022-03-03
  • 實例詳解SpringMVC入門使用

    實例詳解SpringMVC入門使用

    大家好,本篇文章主要講的是實例詳解SpringMVC入門使用,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • idea中寫sql語句沒有提示字段的問題

    idea中寫sql語句沒有提示字段的問題

    在IDEA中編寫SQL時如果沒有字段提示,通常是因為沒有設置注入語言,解決方法是通過快捷鍵Alt+Enter選擇“注入語言或引用”,然后選擇相應的數(shù)據庫(如MySQL),之后重新輸入SQL語句即可,此方法可以有效解決IDEA中SQL語句提示問題,提高開發(fā)效率
    2024-09-09
  • 全網最全最細的jmeter接口測試教程以及接口測試流程(入門教程)

    全網最全最細的jmeter接口測試教程以及接口測試流程(入門教程)

    本文主要介紹了全網最全最細的jmeter接口測試教程以及接口測試流程,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • java實現(xiàn)飛機大戰(zhàn)小游戲

    java實現(xiàn)飛機大戰(zhàn)小游戲

    這篇文章主要為大家詳細介紹了java實現(xiàn)飛機大戰(zhàn)小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • SpringBoot項目中Date類型數(shù)據在接口返回的時間不正確的問題解決

    SpringBoot項目中Date類型數(shù)據在接口返回的時間不正確的問題解決

    如果接口返回的Date類型時間與數(shù)據庫中datetime不一致,可能是由于沒有正確配置時區(qū)導致的,解決方法是在yaml配置文件中指定正確的日期格式和時區(qū)配置,修改配置并重啟項目后,可以獲得正確的時間,下面就來介紹一下
    2024-09-09
  • java編譯后的文件出現(xiàn)xx$1.class的原因及解決方式

    java編譯后的文件出現(xiàn)xx$1.class的原因及解決方式

    這篇文章主要介紹了java編譯后的文件出現(xiàn)xx$1.class的原因及解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • java數(shù)據結構循環(huán)隊列的空滿判斷及長度計算

    java數(shù)據結構循環(huán)隊列的空滿判斷及長度計算

    這篇文章主要為大家介紹了java數(shù)據結構循環(huán)隊列的空滿判斷及長度計算,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • SpringBoot thymeleaf eclipse熱部署方案操作步驟

    SpringBoot thymeleaf eclipse熱部署方案操作步驟

    今天小編就為大家分享一篇關于SpringBoot thymeleaf eclipse熱部署方案操作步驟,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03

最新評論