阿里雲短發服務使用流程:
1.在阿里雲上完成短信服務的購買。
2.導入相關的jar包。
<!-- 阿里雲短信服務 --> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.1.0</version> </dependency> <!-- 阿里雲短信服務 -->
3.復制以下模板代碼(完成3.1和3.2的參數獲取即可使用)。
3.1從購買的短信服務獲取參數:signName(簽名名稱)、templateCode(模版CODE)、<accessKeyId>、<accessSecret>;
注意:前兩個參數申請位置(請按需要選擇國內或國際):
最后兩個參數獲取位置(<accessKeyId>、<accessSecret>):
3.2傳入參數:phone(電話號碼)、code(要發送給用戶的驗證碼)。
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 SendSms { /** * @Title: sendSMS * @Description: 阿里雲發送短信 * @param phone 電話號碼 * @param code 自定義的驗證碼 * @param signName 阿里雲短信服務上創建的簽名名稱 * @param templateCode 阿里雲短信服務上創建的模板的模版CODE * @return void */ public static void sendSMS(String phone,String code,String signName,String templateCode){ DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<accessKeyId>", "<accessSecret>"); IAcsClient client = new DefaultAcsClient(profile); //拼接模板參數(驗證碼)value String codeSMS="{\"code\":\""+code+"\"}"; 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("SignName", signName);//簽名必須使用阿里雲短信服務上創建的簽名名稱 request.putQueryParameter("TemplateCode", templateCode);//模板必須使用阿里雲短信服務上創建的模板的模版CODE request.putQueryParameter("PhoneNumbers", phone);//電話號碼 request.putQueryParameter("TemplateParam", codeSMS); try { CommonResponse response = client.getCommonResponse(request); System.out.println(response.getData()); } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } }