作者:肥zi斌_343 | 来源:互联网 | 2023-08-27 07:03
篇首语:本文由编程笔记#小编为大家整理,主要介绍了使用阿里云短信服务发送短信验证码相关的知识,希望对你有一定的参考价值。
阿里云短发服务使用流程:
1.在阿里云上完成短信服务的购买。
2.导入相关的jar包。
com.aliyun
aliyun-java-sdk-core
4.1.0
3.复制以下模板代码(完成3.1和3.2的参数获取即可使用)。
3.1从购买的短信服务获取参数:signName(签名名称)、templateCode(模版CODE)、、;
注意:前两个参数申请位置(请按需要选择国内或国际):
最后两个参数获取位置(、):
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", "", "");
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();
}
}
}