阿里短信發送 SMS

對接阿里的短信發送平臺

這裏代碼非常簡單 導對了包 稍微測試一下就可以了

1.引入jar 包

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-core</artifactId>
    <version>4.2.2</version>
</dependency>

2.整工具類
這裏的code 指的是 阿里推送自己生成的模板

public static String sendMessage(String msg,String mobile,String code) throws ClientException {
		
		IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", ACCESS_KEY_ID,
				ACCESS_KEY_SECRET);
		
		DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
		IAcsClient acsClient = new DefaultAcsClient(profile);
		 //組裝請求對象
		 SendSmsRequest request = new SendSmsRequest();
		 //使用post提交
		 request.setMethod(MethodType.POST);
		 //必填:待發送手機號。支持以逗號分隔的形式進行批量調用,批量上限爲1000個手機號碼,批量調用相對於單條調用及時性稍有延遲,驗證碼類型的短信推薦使用單條調用的方式;發送國際/港澳臺消息時,接收號碼格式爲國際區號+號碼,如“85200000000”
		 request.setPhoneNumbers(mobile);
		 //必填:短信簽名-可在短信控制檯中找到
		 request.setSignName(title);
		 //必填:短信模板-可在短信控制檯中找到,發送國際/港澳臺消息時,請使用國際/港澳臺短信模版
		 request.setTemplateCode(code);
		 //可選:模板中的變量替換JSON串,如模板內容爲"親愛的${name},您的驗證碼爲${code}"時,此處的值爲
		 //友情提示:如果JSON中需要帶換行符,請參照標準的JSON協議對換行符的要求,比如短信內容中包含\r\n的情況在JSON中需要表示成\\r\\n,否則會導致JSON在服務端解析失敗
		 
		 request.setTemplateParam(msg);
		 //可選-上行短信擴展碼(擴展碼字段控制在7位或以下,無特殊需求用戶請忽略此字段)
		 //request.setSmsUpExtendCode("90997");
		 //可選:outId爲提供給業務方擴展字段,最終在短信回執消息中將此值帶回給調用者
		 request.setOutId("yourOutId");
		//請求失敗這裏會拋ClientException異常
		SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
		if(sendSmsResponse.getCode() != null && sendSmsResponse.getCode().equals("OK")) {
		//請求成功
			return "0";
		}
		
		return sendSmsResponse.getMessage();
	}

3.json 格式
code 指的是 驗證碼

String json = “{“code”:”"+code+"",“product”:“cp”}";

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章