Java調用騰訊雲短信接口,完成驗證碼的發送(不成功你來砍我!!)


一、前言

我們在一些網站注冊頁面,經常會見到手機驗證碼的存在,這些驗證碼一般的小公司都是去買一些大的廠家的短信服務,自己開發對小公司的成本花費太大了!今天小編就帶着大家來學習一下騰訊雲的短信接口,體驗一下,自己實現!!!

二、准備

小編這里把網站地址給大家 --->騰訊雲短信控制台

  1. 快速入門 ---> 開始創建
    在這里插入圖片描述
  2. 簽名管理 --->完善信息(要有備案的域名或者APP)
    在這里插入圖片描述
  3. 正文模板管理 --->創建正文模板
    在這里插入圖片描述
  4. 快速入門 --->查看成功
    在這里插入圖片描述
  5. 應用列表 --->SDK AppID和App Key(重要,后面要用)
    在這里插入圖片描述
  6. 正文模板管理 ---> 模板ID(重要,后面要用)
    在這里插入圖片描述
  7. 簽名管理 ---> 內容(重要,后面要用)
    在這里插入圖片描述

三、導入依賴

   <dependency>
       <groupId>com.github.qcloudsms</groupId>
       <artifactId>qcloudsms</artifactId>
       <version>1.0.5</version>
   </dependency>

四、運行代碼

import cn.hutool.json.JSONException;
import com.github.qcloudsms.SmsSingleSender;
import com.github.qcloudsms.SmsSingleSenderResult;
import com.github.qcloudsms.httpclient.HTTPException;
import java.io.IOException;


public class Message {

    public static void main(String[] args) {

        Message message = new Message();
        //輸入要發送的手機號
        message.sendMessage("手機號碼");

    }

    // 短信應用SDK AppID  --- 對應二、准備的5
    int appid = 1400009099; // 1400開頭

    // 短信應用SDK AppKey  --- 對應二、准備的5
    String appkey = "9ff91d87c2cd7cd0ea762f141975d1df37481d48700d70ac37470aefc60f9bad";

    // 短信模板 ID,需要在短信應用中申請  --- 對應二、准備的6
    int templateId = 7839; // NOTE: 這里的模板ID`7839`只是一個示例,真實的模板ID需要在短信控制台中申請

    // 簽名   --- 對應二、准備的7
    String smsSign = "騰訊雲"; // NOTE: 這里的簽名"騰訊雲"只是一個示例,真實的簽名需要在短信控制台中申請,另外簽名參數使用的是`簽名內容`,而不是`簽名ID`

    /**
     * 騰訊雲發送短信驗證碼
     * @param phoneNumber 需要發送給哪個手機號碼
     *
     */
    public void sendMessage(String phoneNumber) {
        
        try{
            // 我們隨機生成四位隨機數
            String verificationCode = (int) ((Math.random() * 9 + 1) * 1000) + "";

            // 數組具體的元素個數和模板中變量個數必須一致  我的模板中需要填寫驗證碼和有效時間,{1},{2}
            String[] params = {verificationCode , "5"};
            SmsSingleSender singleSender = new SmsSingleSender(appid, appkey);

            SmsSingleSenderResult result = singleSender.sendWithParam("86", phoneNumber, templateId, params, smsSign, "", "");

            System.out.println("result --->" + result);

        } catch (HTTPException e) {
            // HTTP 響應碼錯誤
            e.printStackTrace();
        } catch (JSONException e) {
            // JSON 解析錯誤
            e.printStackTrace();
        } catch (IOException e) {
            // 網絡 IO 錯誤
            e.printStackTrace();
        }

    }

}

五、運行結果

在這里插入圖片描述

六、總結

本次小編只是實現可以發送成功,僅供剛剛入門的童鞋學習參考.大家可以去官方API文檔去看,里面會有很多種類型,小編的代碼也是從上面copy下來的!!
官網文檔API --->騰訊雲官方API文檔


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM