From 5a9c7cf38a30722c4da605f5bb2fa42f13c95975 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期三, 08 一月 2020 14:27:56 +0800
Subject: [PATCH] 优化400 错误

---
 AppFrontService/src/main/java/com/java110/app/smo/api/impl/ApiSMOImpl.java |   21 +++++++++++++--------
 1 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/AppFrontService/src/main/java/com/java110/app/smo/api/impl/ApiSMOImpl.java b/AppFrontService/src/main/java/com/java110/app/smo/api/impl/ApiSMOImpl.java
index efd738e..cc7ee63 100644
--- a/AppFrontService/src/main/java/com/java110/app/smo/api/impl/ApiSMOImpl.java
+++ b/AppFrontService/src/main/java/com/java110/app/smo/api/impl/ApiSMOImpl.java
@@ -8,11 +8,9 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.ResponseEntity;
+import org.springframework.http.*;
 import org.springframework.stereotype.Service;
+import org.springframework.web.client.HttpStatusCodeException;
 import org.springframework.web.client.RestTemplate;
 
 import java.util.Map;
@@ -54,10 +52,17 @@
 
         HttpEntity<String> httpEntity = new HttpEntity<String>(body, header);
         logger.debug("璇锋眰鍚庣url" + url);
-
-        ResponseEntity<String> responseEntity = restTemplate.exchange(url, method, httpEntity, String.class);
-        logger.debug("api杩斿洖淇℃伅" + responseEntity);
-        return responseEntity;
+        ResponseEntity<String> responseEntity = null;
+        try {
+            responseEntity = restTemplate.exchange(url, method, httpEntity, String.class);
+        } catch (HttpStatusCodeException e) { //杩欓噷spring 妗嗘灦 鍦�4XX 鎴� 5XX 鏃舵姏鍑� HttpServerErrorException 寮傚父锛岄渶瑕侀噸鏂板皝瑁呬竴涓�
+            responseEntity = new ResponseEntity<String>(e.getResponseBodyAsString(), e.getStatusCode());
+        } catch (Exception e) {
+            responseEntity = new ResponseEntity<String>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
+        } finally {
+            logger.debug("api杩斿洖淇℃伅" + responseEntity);
+            return responseEntity;
+        }
     }
 
 

--
Gitblit v1.8.0