java實現短信服務
1.導入依賴包:
二、編寫java工具類
package com.walkby.utils; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest; import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.http.MethodType; import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.profile.IClientProfile; import com.walkby.config.SMSConfig; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; /** * @author * 發送短信工具類 */ @Component @Slf4j public class SendSms { //產品名稱:云通信短信API產品,開發者無需替換 static final String product = "Dysmsapi"; //產品域名,開發者無需替換 static final String domain = "dysmsapi.aliyuncs.com"; /** * 短信驗證 * @param phone 手機號 * @param code 驗證碼 * @param templateCode 短信模版 * @return * @throws ClientException */ public static SendSmsResponse sendSms(String phone, String code,String templateCode) throws ClientException { //可自助調整超時時間 System.setProperty("sun.net.client.defaultConnectTimeout", "10000"); System.setProperty("sun.net.client.defaultReadTimeout", "10000"); //初始化acsClient,暫不支持region化 IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", SMSConfig.KEY_ID,SMSConfig.KEY); DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain); IAcsClient acsClient = new DefaultAcsClient(profile); //組裝請求對象-具體描述見控制臺-文檔部分內容 SendSmsRequest request = new SendSmsRequest(); request.setMethod(MethodType.POST); request.setPhoneNumbers(phone); request.setSignName(SMSConfig.SIGN_NAME); request.setTemplateCode(templateCode); request.setTemplateParam("{\"code\":\"" + code + "\"}"); //選填-上行短信擴展碼(無特殊需求用戶請忽略此字段) //request.setSmsUpExtendCode("90997"); //hint 此處可能會拋出異常,注意catch SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request); // log.info("發送短信狀態:{}", sendSmsResponse.getCode()); log.info("發送短信消息:{}", sendSmsResponse.getMessage()); return sendSmsResponse; } }
Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。