From ca4662481a96825dffab34118fbfb6b18a92923e Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 03 七月 2020 19:23:50 +0800
Subject: [PATCH] 优化 事务

---
 java110-core/src/main/java/com/java110/core/feign/UserErrorDecoder.java |   30 ++++++++++++++++++++++--------
 1 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/feign/UserErrorDecoder.java b/java110-core/src/main/java/com/java110/core/feign/UserErrorDecoder.java
index e6ac9e3..927dd42 100644
--- a/java110-core/src/main/java/com/java110/core/feign/UserErrorDecoder.java
+++ b/java110-core/src/main/java/com/java110/core/feign/UserErrorDecoder.java
@@ -10,27 +10,41 @@
 
 import java.io.IOException;
 
+/**
+ * 鑷畾涔夊紓甯歌В鏋�
+ */
 public class UserErrorDecoder implements ErrorDecoder {
+
+    private static final int HTTP_STATUS_400 = 400;
 
     private Logger logger = LoggerFactory.getLogger(getClass());
 
+    /**
+     * 寮傚父瑙f瀽 鍦� SynchronousMethodHandler 绫� 134 鍙疯皟鐢�
+     *
+     * @param methodKey 鏂规硶key
+     * @param response  杩斿洖瀵硅薄
+     * @return 杩斿洖寮傚父
+     */
     public Exception decode(String methodKey, Response response) {
 
         Exception exception = null;
         try {
             String json = Util.toString(response.body().asReader());
 
-            logger.error("璋冪敤鏂规硶鍑虹幇寮傚父浜嗭細"+json);
+            logger.error("璋冪敤鏂规硶鍑虹幇寮傚父浜嗭細" + json);
             exception = new RuntimeException(json);
+            // 杩欓噷鍙皝瑁�4寮�澶寸殑璇锋眰寮傚父脽 && response.status() < 500
+            if (HTTP_STATUS_400 <= response.status()) {
+                exception = new HystrixBadRequestException("璇锋眰鍙傛暟閿欒锛�"+Util.toString(response.body().asReader()), exception);
+            } else {
+                logger.error(exception.getMessage(), exception);
+            }
         } catch (IOException ex) {
             logger.error(ex.getMessage(), ex);
         }
-        // 杩欓噷鍙皝瑁�4寮�澶寸殑璇锋眰寮傚父脽
-        if (400 <= response.status() && response.status() < 500){
-            exception = new HystrixBadRequestException("request exception wrapper", exception);
-        }else{
-            logger.error(exception.getMessage(), exception);
-        }
+
+
         return exception;
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.8.0