測試使用阿里雲短信服務,在項目中集成


阿里雲實名認證分為個人實名認證和企業實名認證,短信服務產品屬於后付費產品,即發送短信成功才會開始計費。

不同短信模板的單價不同,產生費用后,進行累計計費,每5分鍾出賬一次,每個月月底進行扣費。≤10萬時,0.045元/條,沖個幾塊錢,個人做小項目練手的話是夠用的。

阿里雲短信官網:https://helpcdn.aliyun.com/product/44282.html

使用場景:作為個人用戶,主要是用來做短信驗證碼,如登錄注冊找回密碼等功能。

使用流程:

進入快速入門頁面,https://help.aliyun.com/document_detail/55288.html?spm=a2c4g.11186623.6.557.6b6abc45UPyJ3A,按照教程完成個人認證,開通短信服務,申請短信簽名和模板(審核得幾個小時),給賬戶沖點錢,發送短信。

進入OpenAPI Explorer,根據提示,填寫你的參數,會給一個能運行的小例子,發起調用就能收到短信了。

 

在項目中集成

首先添加依賴:

1         <dependency>
2             <groupId>com.aliyun</groupId>
3             <artifactId>aliyun-java-sdk-core</artifactId>
4             <version>4.0.3</version>
5         </dependency>
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;
/*
pom.xml
<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>aliyun-java-sdk-core</artifactId>
  <version>4.0.3</version>
</dependency>
*/
public class SendSms {
    public static void main(String[] args) {
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<accessKeyId>", "<accessSecret>");
        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", "132xxxxxxxx");
        request.putQueryParameter("SignName", "xxx");
        request.putQueryParameter("TemplateCode", "SMS_xxxxxx");
        request.putQueryParameter("TemplateParam", "{\"code\":\"xxxx\"}");
        try {
            CommonResponse response = client.getCommonResponse(request);
            System.out.println(response.getData());
        } catch (ServerException e) {
            e.printStackTrace();
        } catch (ClientException e) {
            e.printStackTrace();
        }
    }
}

 

 

如果和我一樣是用於找回密碼功能,使用流程如下

1:后台Service層隨機生成幾位驗證碼

2:根據傳入的手機號,使用官方給的API,設為自己的參數,將驗證碼發送出去

3:獲取用戶的輸入驗證碼,和后台驗證碼進行對比

4:如果一致,則可以修改密碼

 


免責聲明!

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



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