java阿里云短信接口对接
public class AliyunSmsUtils {
static final String product = "Dysmsapi";
static final String domain = "dysmsapi.aliyuncs.com";
static final String accessKeyId = "LTAI4GJwaHkexEU3YAuk1TkR";
static final String accessKeySecret = "KrrKoXeusdBoq1RoSAVlg7sMvu9MaL";
public static SendSmsResponse sendSms(String countryCode,String telephone, String code,String language) throws ClientException {
System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
System.setProperty("sun.net.client.defaultReadTimeout", "10000");
IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
SendSmsRequest request = new SendSmsRequest();
request.setPhoneNumbers(countryCode+telephone);
request.setSignName("Noohle");
if(language.equals("中文")) {
request.setSignName("上海怒吼科技有限公司");
request.setTemplateCode("SMS_165015167");
}else if(language.equals("English")){
request.setTemplateCode("SMS_196644627");
}else if(language.equals("Espanol")){
request.setTemplateCode("SMS_196619879");
}else if(language.equals("Français")){
request.setTemplateCode("SMS_196619880");
}else if(language.equals("Русский")){
request.setTemplateCode("SMS_196659633");
}else if(language.equals("Indonesia")){
request.setTemplateCode("SMS_196619890");
}else if(language.equals("日本語")){
request.setTemplateCode("SMS_196654872");
}
request.setTemplateParam("{\"code\":\"" + code + "\"}");
request.setOutId("yourOutId");
SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);
return sendSmsResponse;
}
private static int newcode;
public static int getNewcode() {
return newcode;
}
public static void setNewcode(){
newcode = (int)(Math.random()*9000)+1000;
}
}
public Result<LoginParam> register(SimpleRegister register,String verificationCode) {
String phoneCode = stringRedisTemplate.opsForValue().get("phoneCode"+register.getMobile());
if(StringUtils.isEmpty(phoneCode)){
throw new FoodingException("es.code.null");
}
if(!phoneCode.equals(register.getMobile()+verificationCode)){
throw new FoodingException("es.code.error");
}
stringRedisTemplate.delete("phoneCode"+register.getMobile());
checkUnique(register.getEnterpriseEmail(), register.getEnterpriseTel(),register.getMobile());
return new Result<>(userService.register(register));
}
``