From 3ebbc15764ff0574f1024eb485e23d2df3e8730b Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 17 四月 2019 11:58:40 +0800 Subject: [PATCH] 阿里云短信优化,分享信息优化 --- fanli/src/main/java/com/yeshi/fanli/util/AliyunSMSUtil.java | 50 +++++++++++++++++++++++++++++--------------------- 1 files changed, 29 insertions(+), 21 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/AliyunSMSUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/AliyunSMSUtil.java index 200f78d..68b0036 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/AliyunSMSUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/AliyunSMSUtil.java @@ -1,16 +1,16 @@ package com.yeshi.fanli.util; -import com.aliyuncs.CommonRequest; -import com.aliyuncs.CommonResponse; 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.exceptions.ServerException; import com.aliyuncs.http.MethodType; import com.aliyuncs.profile.DefaultProfile; +import com.aliyuncs.profile.IClientProfile; import com.yeshi.fanli.exception.SMSException; - -import net.sf.json.JSONArray; +import com.yeshi.fanli.log.LogHelper; //鑵捐鐭俊鍙戦�� public class AliyunSMSUtil { @@ -22,30 +22,38 @@ * @param msg */ public static void sendSingleMsg(String phone, String templateCode, String templateParamJson) throws SMSException { - DefaultProfile profile = DefaultProfile.getProfile("default", Constant.smsConfig.getAliyunAppId(), + IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", Constant.smsConfig.getAliyunAppId(), Constant.smsConfig.getAliyunAppSecret()); - IAcsClient client = new DefaultAcsClient(profile); - - CommonRequest request = new CommonRequest(); - // request.setProtocol(ProtocolType.HTTPS); - request.setMethod(MethodType.POST); - request.setDomain("dysmsapi.aliyuncs.com"); - request.setVersion("2017-05-25"); - request.setAction("SendBatchSms"); - JSONArray array = new JSONArray(); - array.add(phone); - request.putQueryParameter("PhoneNumberJson", array.toString()); - request.putQueryParameter("SignNameJson", Constant.smsConfig.getSmsSign()); - request.putQueryParameter("TemplateCode", templateCode); - request.putQueryParameter("TemplateParamJson", templateParamJson); try { - CommonResponse response = client.getCommonResponse(request); - System.out.println(response.getData()); + DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", "Dysmsapi", "dysmsapi.aliyuncs.com"); + } catch (ClientException e) { + e.printStackTrace(); + } + IAcsClient acsClient = new DefaultAcsClient(profile); + // 缁勮璇锋眰瀵硅薄 + SendSmsRequest request = new SendSmsRequest(); + // 浣跨敤post鎻愪氦 + request.setMethod(MethodType.POST); + request.setPhoneNumbers(phone); + request.setSignName("灏忓奖璁扮鎶�"); + request.setTemplateCode(templateCode); + request.setTemplateParam(templateParamJson); + SendSmsResponse sendSmsResponse; + try { + sendSmsResponse = acsClient.getAcsResponse(request); + if (sendSmsResponse.getCode() != null && sendSmsResponse.getCode().equals("OK")) { + // 璇锋眰鎴愬姛 + LogHelper.smsInfo("闃块噷浜戠煭淇″彂閫佹垚鍔�:" + phone); + } else { + LogHelper.smsInfo("闃块噷浜戠煭淇″彂閫佸け璐�:" + phone + "-" + sendSmsResponse.getMessage()); + throw new SMSException(3, sendSmsResponse.getMessage()); + } } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } + } } -- Gitblit v1.8.0