diff --git a/src/main/java/org/anyin/gitee/shiro/advisor/ApiMessageAdvisor.java b/src/main/java/org/anyin/gitee/shiro/advisor/ApiMessageAdvisor.java index e50bc04..dfd0cd7 100644 --- a/src/main/java/org/anyin/gitee/shiro/advisor/ApiMessageAdvisor.java +++ b/src/main/java/org/anyin/gitee/shiro/advisor/ApiMessageAdvisor.java @@ -120,15 +120,15 @@ public class ApiMessageAdvisor { * @return RequestId */ private String getRequestId(){ - UUID existUUID = RequestIdUtils.getRequestId(); - if(existUUID != null){ - return existUUID.toString(); - } ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); if(attributes == null || !StringUtils.hasText(attributes.getRequest().getHeader("x-request-id"))) { RequestIdUtils.generateRequestId(); return RequestIdUtils.getRequestId().toString(); } + UUID existUUID = RequestIdUtils.getRequestId(); + if(existUUID != null){ + return existUUID.toString(); + } // 因为如果有网关,则一般会从网关传递过来,所以优先从header头获取 HttpServletRequest request = attributes.getRequest(); String requestId = request.getHeader("x-request-id"); diff --git a/src/main/java/org/anyin/gitee/shiro/utils/RequestIdUtils.java b/src/main/java/org/anyin/gitee/shiro/utils/RequestIdUtils.java index 8d09735..d60ba14 100644 --- a/src/main/java/org/anyin/gitee/shiro/utils/RequestIdUtils.java +++ b/src/main/java/org/anyin/gitee/shiro/utils/RequestIdUtils.java @@ -5,7 +5,7 @@ import java.util.UUID; public class RequestIdUtils { private static final ThreadLocal requestIdHolder = new ThreadLocal<>(); - public RequestIdUtils() { + private RequestIdUtils() { } public static void generateRequestId() {