From 7584a3cc51c42396e5907f6026a94a70cf109481 Mon Sep 17 00:00:00 2001 From: zhangyanduan Date: Mon, 27 Jun 2022 14:57:07 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=BD=93=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=9A=84TOKEN=E8=AE=A4=E8=AF=81=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E5=90=8E=EF=BC=8C=E6=8A=9B=E5=87=BA=E7=9A=84=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E4=B8=AD=E6=97=A0=E6=B3=95=E8=A2=AB=E8=AF=86=E5=88=AB=E5=88=B0?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E5=89=8D=E7=AB=AF=E6=97=A0=E6=B3=95=E6=8D=95?= =?UTF-8?q?=E8=8E=B7=E6=AD=A4=E7=B1=BB=E5=BC=82=E5=B8=B8=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E6=97=A0=E6=B3=95=E6=AD=A3=E7=A1=AE=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../exception/SysRuntimeExceptionHandler.java | 2 +- .../login/exception/TokenRuntimeException.java | 2 +- .../da/main/advice/AdcDaBaseExceptionAdvice.java | 16 ++++++++++++++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java index 93006848..549d2847 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java @@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; *

* Created at 2020/8/6 5:03 下午 */ -@RestControllerAdvice +//@RestControllerAdvice public class SysRuntimeExceptionHandler { @ExceptionHandler(TokenRuntimeException.class) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java index 71be3519..01fa4a49 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java @@ -12,7 +12,7 @@ import lombok.Data; * Created at 2020/8/6 4:58 下午 */ @Data -public class TokenRuntimeException extends RuntimeException{ +public class TokenRuntimeException extends Exception{ private String code = "401"; private String msg; diff --git a/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java b/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java index 44ae7eae..38faf354 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java +++ b/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java @@ -13,11 +13,23 @@ import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseStatus; +import java.util.HashSet; +import java.util.Set; + @Slf4j @ControllerAdvice @Order(value=4) public class AdcDaBaseExceptionAdvice { + private static Set errMsg = new HashSet<>(); + + static { + errMsg.add("token已过期"); + errMsg.add("未登录"); + errMsg.add("token解析错误"); + errMsg.add("员工不存在"); + } + @ResponseStatus(HttpStatus.OK) @ExceptionHandler(AdcDaBaseException.class) @@ -34,8 +46,8 @@ public class AdcDaBaseExceptionAdvice { log.error(exception.getMessage(), exception); // TODO 在数据库中记录程序异常,这个地方的异常是未处理的异常,需要管理员查看并进行处理以防重复出现 if(exception.getStackTrace() != null){ - if("token已过期".equals(exception.getMessage())){ - return Result.error(ResponseMessageCodeEnum.ERROR_TOKEN.getCode(), "token已过期,请重新登录"); + if(errMsg.contains(exception.getMessage())){ + return Result.error(ResponseMessageCodeEnum.ERROR_TOKEN.getCode(), "token无效,请登录"); } } return Result.error(ResponseMessageCodeEnum.ERROR.getCode(), "程序异常,请重试。如果重复出现请联系管理员处理!");