
一、阿里云设置签名和模板由于工作需要,特此记录一下
阿里云登陆注册我就不说了,登陆之后 首页搜索 短信服务
点击 短信服务 控制台
点击 国内消息 我们需要添加一个签名和模板
签名和模板需要审核,一般两小时内审核。
模板管理
上图的签名名称和模板CODE待会会使用到。
二、云账号 AccessKey添加一个AccessKey 也就是待会对接阿里云API所需的秘钥
点击 创建AccessKey 它会生成一个 AccessKey ID 和 AccessKey Secret
复制保存这两个生成的字符串,待会对接会使用到
阿里云其实提供了完整的详细对接文档,如果有需要的朋友可以去查看官网文档,博主也是按照官方文档来进行配置
- 导入依赖
com.aliyun dysmsapi201705252.0.7
-
application.yml配置
-
对应配置类
-
编写工具类 我直接贴代码了
public class SMSUtil {
private static final Log log = LogFactory.get();
//发送短信
public static boolean send(String mobile){
Client client = createClient();
JSONObject param = randomCode();
SendSmsRequest request = createRequest(mobile,JSONObject.toJSONString(param));
JSONObject jsonObject = null;
try {
SendSmsResponse response = client.sendSms(request);
jsonObject = (JSONObject) JSONObject.parseObject(JSONObject.toJSONString(response)).get("body");
System.out.println(jsonObject);
if(jsonObject.get("code").equals(Constant.SMS.SUCCESS_CODE)){
log.info("阿里云短信发送成功!手机号:【{}】 -- 验证码:【{}】 -- {}",mobile,param.get("code"),DateUtil.now());
return true;
}
} catch (Exception e) {
log.error("阿里云短信发送出现异常:{}",e.getMessage());
return false;
}
log.info("阿里云短信发送失败!手机号:【{}】 -- 验证码:【{}】 -- {}",mobile,param.get("code"), DateUtil.now());
return false;
}
private static Client createClient(){
Client client = null;
Config config = new Config()
// 您的AccessKey ID
.setAccessKeyId(AliSMSConfig.id)
// 您的AccessKey Secret
.setAccessKeySecret(AliSMSConfig.key);
config.endpoint = AliSMSConfig.endPoint;
try {
client = new Client(config);
} catch (Exception e) {
e.printStackTrace();
}
return client;
}
private static SendSmsRequest createRequest(String mobile,String param){
return new SendSmsRequest()
.setPhoneNumbers(mobile)
.setSignName(Constant.SMS.COMMON_SIGN_NAME)//此填写签名名称
.setTemplateCode(Constant.SMS.TEMPLATE_CODE_TWO)//此填写模板CODE
.setTemplateParam(param);//验证码参数为json字符串格式 {"code":"xxxxxx"}
}
private static JSONObject randomCode(){
StringBuilder code = new StringBuilder();
Random random = new Random();
for (int i = 0; i < 6; i++) {
int r = random.nextInt(10);
code.append(r);
}
JSONObject param = new JSONObject();
param.put("code",code.toString());
return param;
}
}
- 测试
测试没问题,手机成功接收到短信,大功告成哈哈哈!!!
代码其实并不多,只要按照官方文档来进行配置还是很轻松的。
第一次写博客有点紧张哈哈,若有纰漏还请见谅
小伙伴们在对接过程中若遇到什么问题欢迎在评论区留言!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)