From 8e4758542c73c68182865abd23837496190d2f12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E8=B6=85?= <1162714483@qq.com> Date: Tue, 9 May 2023 19:39:08 +0800 Subject: [PATCH] =?UTF-8?q?fix(swagger):=20swagger=E8=AE=BF=E9=97=AE?= =?UTF-8?q?=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../filter/JwtAuthenticationTokenFilter.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/qiwenshare/file/config/security/filter/JwtAuthenticationTokenFilter.java b/src/main/java/com/qiwenshare/file/config/security/filter/JwtAuthenticationTokenFilter.java index 9f1ee55..9b2b1de 100644 --- a/src/main/java/com/qiwenshare/file/config/security/filter/JwtAuthenticationTokenFilter.java +++ b/src/main/java/com/qiwenshare/file/config/security/filter/JwtAuthenticationTokenFilter.java @@ -11,6 +11,7 @@ import org.springframework.security.authentication.UsernamePasswordAuthenticatio import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.web.authentication.WebAuthenticationDetailsSource; +import org.springframework.security.web.util.matcher.AntPathRequestMatcher; import org.springframework.stereotype.Component; import org.springframework.web.filter.OncePerRequestFilter; @@ -41,10 +42,17 @@ public class JwtAuthenticationTokenFilter extends OncePerRequestFilter { "/notice/list", "/notice/detail", "/param/grouplist", - "/error/**", + "/swagger-ui.html", "/office/IndexServlet" }; + private String[] antWhiteUri = {"/*.html", + "/**/*.html", + "/**/*.css", + "/**/*.js", + "/swagger-ui/**", + "/webSocket/**", + "/error/**",}; @Autowired private UserService userService; @Resource @@ -60,6 +68,14 @@ public class JwtAuthenticationTokenFilter extends OncePerRequestFilter { if (!qiwenVersion.equals(version)) { throw new QiwenException(999999, "脚本未初始化,请在数据库执行数据初始化脚本,存放路径: '/resources/import.sql'!"); } + List antWhiteUriList = Arrays.asList(antWhiteUri); + for (String antWhiteUri : antWhiteUriList) { + AntPathRequestMatcher regexRequestMatcher = new AntPathRequestMatcher(antWhiteUri, "GET", true); + if (regexRequestMatcher.matches(request)) { + chain.doFilter(request, response); + return; + } + } List ignoreUriList = Arrays.asList(ignoreUri); if (ignoreUriList.contains(request.getRequestURI())) {