From c0448ff6abfcda6ea977d240ef76b102135dce50 Mon Sep 17 00:00:00 2001 From: zkh <1650697374@qq.com> Date: Sat, 14 Feb 2026 12:37:02 +0800 Subject: [PATCH] =?UTF-8?q?feat(web):=20=E6=B7=BB=E5=8A=A0=E8=87=AA?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E9=94=99=E8=AF=AF=E6=8E=A7=E5=88=B6=E5=99=A8?= =?UTF-8?q?=E5=A4=84=E7=90=86HTTP=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 实现了ErrorController接口来处理错误请求 - 添加了/error端点的错误处理逻辑 - 返回统一格式的错误响应对象R - 根据请求状态码动态设置错误状态 - 提供了默认500错误码的异常处理机制 --- pom.xml | 2 +- zkh-common/pom.xml | 2 +- zkh-data/pom.xml | 2 +- zkh-file/pom.xml | 2 +- zkh-log/pom.xml | 2 +- zkh-web/pom.xml | 2 +- .../web/controller/CustomErrorController.java | 23 +++++++++++++++++++ 7 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 zkh-web/src/main/java/vip/jcfd/web/controller/CustomErrorController.java diff --git a/pom.xml b/pom.xml index 9e590fb..b3b9232 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 pom ZKH Framework A Java framework for ZKH applications diff --git a/zkh-common/pom.xml b/zkh-common/pom.xml index 1dc68d1..f3b440f 100644 --- a/zkh-common/pom.xml +++ b/zkh-common/pom.xml @@ -6,7 +6,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 zkh-common diff --git a/zkh-data/pom.xml b/zkh-data/pom.xml index 1b367c8..1c0dd55 100644 --- a/zkh-data/pom.xml +++ b/zkh-data/pom.xml @@ -6,7 +6,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 zkh-data diff --git a/zkh-file/pom.xml b/zkh-file/pom.xml index 24ef066..3ac5b31 100644 --- a/zkh-file/pom.xml +++ b/zkh-file/pom.xml @@ -6,7 +6,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 zkh-file diff --git a/zkh-log/pom.xml b/zkh-log/pom.xml index d7e0bf6..4bde7d8 100644 --- a/zkh-log/pom.xml +++ b/zkh-log/pom.xml @@ -6,7 +6,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 zkh-log diff --git a/zkh-web/pom.xml b/zkh-web/pom.xml index 601c139..40d37c4 100644 --- a/zkh-web/pom.xml +++ b/zkh-web/pom.xml @@ -7,7 +7,7 @@ vip.jcfd zkh-framework - 1.5.9 + 1.5.10 zkh-web diff --git a/zkh-web/src/main/java/vip/jcfd/web/controller/CustomErrorController.java b/zkh-web/src/main/java/vip/jcfd/web/controller/CustomErrorController.java new file mode 100644 index 0000000..6d7e7de --- /dev/null +++ b/zkh-web/src/main/java/vip/jcfd/web/controller/CustomErrorController.java @@ -0,0 +1,23 @@ +package vip.jcfd.web.controller; + +import jakarta.servlet.RequestDispatcher; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.boot.web.servlet.error.ErrorController; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import vip.jcfd.common.core.R; + +import java.util.Optional; + +@RestController +public class CustomErrorController implements ErrorController { + + @RequestMapping("/error") + public R handleError(HttpServletRequest request) { + int status = Optional.ofNullable(request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE)) + .map(Object::toString) + .map(Integer::parseInt) + .orElse(500); + return new R<>(status, "发生错误", false, null); + } +}