Răsfoiți Sursa

优化全局异常拦截处理逻辑

woody 1 an în urmă
părinte
comite
e1eb80752d

+ 9 - 3
framework-base/src/main/java/com/chelvc/framework/base/interceptor/GlobalExceptionInterceptor.java

@@ -235,10 +235,16 @@ public class GlobalExceptionInterceptor extends AbstractErrorController implemen
         Map<String, Object> attributes = this.getErrorAttributes(request, this.options);
         String uri = (String) attributes.get("path");
         String method = request.getMethod();
-        String message = (String) attributes.get("message");
+        String message = (String) attributes.get("error");
         log.warn(LoggingContextHolder.message(uri, method, message));
-        Result<?> result = status.is5xxServerError() ? Result.failure(ApplicationContextHolder.getMessage("Failure")) :
-                Result.of(status.name(), null, status.getReasonPhrase());
+
+        Result<?> result;
+        if (status.is5xxServerError()) {
+            result = Result.failure(ApplicationContextHolder.getMessage("Failure"));
+        } else {
+            result = Result.of(HttpStatus.BAD_REQUEST.name(), null,
+                    ApplicationContextHolder.getMessage("Request.Invalid"));
+        }
         response.setStatus(SessionContextHolder.result2status(result).value());
         return result;
     }