From 91f58ac34a01db7bb4e30a57af4454e0c36fd1c9 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 14 六月 2020 13:06:21 +0800
Subject: [PATCH] 处理服务启动失败问题
---
java110-core/src/main/java/com/java110/core/factory/TencentSendMessageFactory.java | 56 +++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 43 insertions(+), 13 deletions(-)
diff --git a/java110-core/src/main/java/com/java110/core/factory/TencentSendMessageFactory.java b/java110-core/src/main/java/com/java110/core/factory/TencentSendMessageFactory.java
index b411ead..1e9e1ee 100644
--- a/java110-core/src/main/java/com/java110/core/factory/TencentSendMessageFactory.java
+++ b/java110-core/src/main/java/com/java110/core/factory/TencentSendMessageFactory.java
@@ -11,6 +11,12 @@
import com.aliyuncs.profile.DefaultProfile;
import com.java110.utils.cache.MappingCache;
import com.java110.utils.factory.ApplicationContextFactory;
+import com.tencentcloudapi.common.Credential;
+import com.tencentcloudapi.common.exception.TencentCloudSDKException;
+import com.tencentcloudapi.common.profile.ClientProfile;
+import com.tencentcloudapi.sms.v20190711.SmsClient;
+import com.tencentcloudapi.sms.v20190711.models.SendSmsRequest;
+import com.tencentcloudapi.sms.v20190711.models.SendSmsResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpStatus;
@@ -40,7 +46,7 @@
public final static int DEFAULT_MESSAGE_CODE_LENGTH = 6;
- private RestTemplate restTemplate;
+ // private RestTemplate restTemplateNoLoadBalanced;
/**
@@ -71,19 +77,43 @@
//寮�濮嬪彂閫侀獙璇佺爜
logger.debug("鍙戦�佸彿鐮佷负{}锛岀煭淇$爜涓簕}", tel, code);
- String url = "https://sms.tencentcloudapi.com/?Action=SendSms" +
- "&PhoneNumberSet.0=+86" + tel +
- "&TemplateID=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "TemplateID") +
- "&Sign=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "Sign") +
- "&TemplateParamSet.0=" + code +
- "&SmsSdkAppid=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "SmsSdkAppid") +
- "&Version=2019-07-11";
- ResponseEntity<String> responseEntity = getRestTemplate().getForEntity(url, String.class);
+// String url = "https://sms.tencentcloudapi.com/?Action=SendSms" +
+// "&PhoneNumberSet.0=+86" + tel +
+// "&TemplateID=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "TemplateID") +
+// "&Sign=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "Sign") +
+// "&TemplateParamSet.0=" + code +
+// "&SmsSdkAppid=" + MappingCache.getValue(TENCENT_SMS_DOMAIN, "SmsSdkAppid") +
+// "&Version=2019-07-11";
+// ResponseEntity<String> responseEntity = getRestTemplate().getForEntity(url, String.class);
- logger.debug("鑵捐鐭俊楠岃瘉鐮佸彂閫侊紝璇锋眰鎶ユ枃" + url + ",杩斿洖鏃ュ織" + responseEntity);
+ // 瀹炰緥鍖栦竴涓璇佸璞★紝鍏ュ弬闇�瑕佷紶鍏ヨ吘璁簯璐︽埛secretId锛宻ecretKey锛岃銆婂垱寤簊ecretId鍜宻ecretKey銆嬪皬鑺�
+ Credential cred = new Credential(MappingCache.getValue(TENCENT_SMS_DOMAIN, "secretId"),
+ MappingCache.getValue(TENCENT_SMS_DOMAIN, "secretKey"));
+ // 瀹炰緥鍖栬璇锋眰浜у搧(浠vm涓轰緥)鐨刢lient瀵硅薄
+ ClientProfile clientProfile = new ClientProfile();
+ clientProfile.setSignMethod(ClientProfile.SIGN_TC3_256);
+ SmsClient smsClient = new SmsClient(cred, MappingCache.getValue(TENCENT_SMS_DOMAIN, "region"));//绗簩涓猘p-chongqing 濉骇鍝佹墍鍦ㄧ殑鍖�
+ SendSmsRequest sendSmsRequest = new SendSmsRequest();
+ sendSmsRequest.setSmsSdkAppid(MappingCache.getValue(TENCENT_SMS_DOMAIN, "SmsSdkAppid"));//appId ,瑙併�婂垱寤哄簲鐢ㄣ�嬪皬鑺�
+ String[] phones = {"+86" + tel}; //鍙戦�佺煭淇$殑鐩爣鎵嬫満鍙凤紝鍙~澶氫釜銆�
+ sendSmsRequest.setPhoneNumberSet(phones);
+ sendSmsRequest.setTemplateID(MappingCache.getValue(TENCENT_SMS_DOMAIN, "TemplateID")); //妯$増id,瑙併�婂垱寤虹煭淇$鍚嶅拰妯$増銆嬪皬鑺�
+ String[] templateParam = {code};//妯$増鍙傛暟锛屼粠鍓嶅線鍚庡搴旂殑鏄ā鐗堢殑{1}銆亄2}绛�,瑙併�婂垱寤虹煭淇$鍚嶅拰妯$増銆嬪皬鑺�
+ sendSmsRequest.setTemplateParamSet(templateParam);
+ sendSmsRequest.setSign(MappingCache.getValue(TENCENT_SMS_DOMAIN, "Sign")); //绛惧悕鍐呭锛屼笉鏄~绛惧悕id,瑙併�婂垱寤虹煭淇$鍚嶅拰妯$増銆嬪皬鑺�
+ SendSmsResponse sendSmsResponse = null;
+ try {
+ sendSmsResponse = smsClient.SendSms(sendSmsRequest); //鍙戦�佺煭淇�
+ } catch (TencentCloudSDKException e) {
+ logger.error("鍙戦�佺煭淇″け璐�", e);
+ }
+
+ logger.debug("鑵捐鐭俊楠岃瘉鐮佸彂閫侊紝璇锋眰鎶ユ枃" + JSONObject.toJSONString(sendSmsRequest) + ",杩斿洖鏃ュ織" + (sendSmsResponse != null ? sendSmsResponse.toString() : ""));
+
+
}
- private static RestTemplate getRestTemplate() {
- return ApplicationContextFactory.getBean("restTemplate", RestTemplate.class);
- }
+// private static RestTemplate getRestTemplate() {
+// return ApplicationContextFactory.getBean("restTemplateNoLoadBalanced", RestTemplate.class);
+// }
}
--
Gitblit v1.8.0