阿里雲短信服務-java模版CODE


阿里雲短信服務從頭到尾流程java版本

       短信服務通常是找第三方作為主要的發送手段(除了大佬),而這些第三方大多數都是來來回回最后找你要錢,可能不要錢的我沒發現,但是阿里雲這個配置比較通俗易懂吧,雖然也要錢,但是0.04一條,作為測試開發用一點也不貴吧(但也有套餐)。

  主要流程為  注冊簽名   -->  注冊模板--->  獲取模板-->下載對應的sdk--->替換模板中的數據

   阿里雲申請方面主要包括   簽名名稱,模板,AccessKey(AccessKey ID,Access Key Secret)

 例如 餓了嗎,您的注冊碼為1234  這里面餓了嗎就是簽名,您的注冊碼就是{code}這個是模板。

1 注冊方面

這個不說了吧,阿里雲賬號都有吧,短信開通服務也是免費開通的

但是要說明一點,就是短信服務和短信驗證碼不一樣的

1.1注冊簽名

簽名注冊其實挺麻煩吧(最麻煩的)分為兩種簽名    注意的是要和模板類型相互對應

1 驗證碼簽名(只有驗證碼)!! 未上線產品只能申請驗證碼  

2 通用簽名 (包括通知,驗證碼,推廣短信,港澳台)這個需要需要上交很多材料,也可以試試選擇微信公眾號內個,可以不用上交材料(但是大概率審核不過),最好上線后在申請這個。

因為時間原因,我就選擇驗證碼服務,名稱盡量起的正常一樣,之前申請了5 6次,不斷改名,最后才成功

1.2模板注冊

模板注冊相對簽名容易一些相比簽名來說,這個比較容易一些,!!!但是之前模板申請的類型是簽名類型要和模板類型對應,這里模板類型為驗證碼類型

1.3 AccessKey

AccessKey包括主要為AccesskeyId 和 Access Key Sercret 這個很容易了,短信驗證碼發送就可以找到了,在個人頭像中能夠的accesskey管理就可以找到了

2 sdk方面

sdk方面支持很多語言的sdk的,我這里使用是java 

鏈接如下

https://help.aliyun.com/document_detail/112148.html?spm=a2c4g.11186623.2.12.15ec50a4Jd0cIw

2.1 jar包下載

我的開發工具是eclipse,除了直接下載的阿里的sdk 的jar包,還需要配套的gson的jar包,如果沒有會報錯

java的sdk和gson對應的jar包  https://github.com/zyhQAQ/gson.git

2.2 具體代碼

具體代碼如下,調用方法就可以發送了  !注意聯網

package com.zyh.util;

import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile;

public class SendSmsByPhone {
    
        private String AccessKeyId = "";//對應的accesskeyid
        private String AccessKeySecret = "";//對應的accesskeysecret
        
    public void sendmessage(String phone){  //傳入手機號,一次調用支持發送一個手機號驗證碼
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", AccessKeyId, AccessKeySecret);
        IAcsClient client = new DefaultAcsClient(profile);
        
        CommonRequest request = new CommonRequest();
        request.setMethod(MethodType.POST);
        request.setDomain("dysmsapi.aliyuncs.com");
        request.setVersion("2017-05-25");//日期別亂寫
        request.setAction("SendSms");
        request.putQueryParameter("RegionId", "cn-hangzhou");
        request.putQueryParameter("PhoneNumbers", phone);//手機號
        request.putQueryParameter("SignName", "往事如風");//簽名名稱
       
        request.putQueryParameter("TemplateCode", "SMS_180956392");//模板code
        request.putQueryParameter("TemplateParam","{\"code\":\"1234\"}");//這個里面填寫驗證碼內容
        try {
            CommonResponse response = client.getCommonResponse(request);
            System.out.println(response.getData());
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            e.printStackTrace();
        }
    }
    
}

 


免責聲明!

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



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