diff --git a/src/main/java/com/ai/da/common/security/filter/AuthenticationFilter.java b/src/main/java/com/ai/da/common/security/filter/AuthenticationFilter.java index 0d1bed1a..47c94026 100644 --- a/src/main/java/com/ai/da/common/security/filter/AuthenticationFilter.java +++ b/src/main/java/com/ai/da/common/security/filter/AuthenticationFilter.java @@ -57,7 +57,7 @@ public class AuthenticationFilter extends OncePerRequestFilter { protected void doFilterInternal(HttpServletRequest httpServletRequest, @NonNull HttpServletResponse httpServletResponse, @NonNull FilterChain filterChain) throws ServletException, IOException { String requestURI = httpServletRequest.getRequestURI(); - if (calculateUrl(requestURI)) { + if (calculateUrl(requestURI) || hasAuthorizationToken(httpServletRequest)) { StopWatch stopWatch = new StopWatch(); HttpServletRequest wrappedRequest = httpServletRequest; HttpServletResponse wrappedResponse = httpServletResponse; @@ -88,6 +88,11 @@ public class AuthenticationFilter extends OncePerRequestFilter { return null == filterUrl ? Boolean.TRUE : Boolean.FALSE; } + private boolean hasAuthorizationToken(HttpServletRequest request) { + String authorizationHeader = request.getHeader("Authorization"); + return authorizationHeader != null && authorizationHeader.startsWith("Bearer"); + } + private void extracted(HttpServletRequest request) throws AuthenticationException { String jwtToken = request.getHeader(properties.getJwtTokenHeader()); // log.debug("后台检查令牌:{}", jwtToken);