From 5936c125b47d34ed1bb85bd0ddba4cb4052c865f Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期五, 17 四月 2026 15:24:12 +0800
Subject: [PATCH] 视图兼容
---
rsf-server/src/main/java/com/vincent/rsf/server/common/security/JwtAuthenticationFilter.java | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/security/JwtAuthenticationFilter.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/security/JwtAuthenticationFilter.java
index ba5fea2..e909f56 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/security/JwtAuthenticationFilter.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/security/JwtAuthenticationFilter.java
@@ -56,9 +56,12 @@
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws ServletException, IOException {
String access_token = JwtUtil.getAccessToken(request);
+ // FILTER_PATH 鍚� /wcs/** 鏃朵細娓呯┖ token锛涚┖鏉垮嚭搴撻〉闇�甯� JWT 鍋� @PreAuthorize锛屾晠 /wcs/empty/** 淇濈暀 token
+ String servletPath = request.getServletPath();
+ boolean keepWcsEmptyJwt = servletPath != null && servletPath.startsWith("/wcs/empty");
for (String filterPath : SecurityConfig.FILTER_PATH) {
AntPathRequestMatcher antPathMatcher = new AntPathRequestMatcher(filterPath);
- if (antPathMatcher.matches(request)) {
+ if (antPathMatcher.matches(request) && !keepWcsEmptyJwt) {
access_token = "";
}
}
@@ -66,10 +69,11 @@
try {
User user;
if (WHITE_KEY.contains(access_token)) {
- user = userService.getByUsername("openapi", 2L);
+ user = userService.getByUsername("root", 1L);
if (user == null) {
throw new UsernameNotFoundException("Username not found");
}
+ userService.setUserAuthInfo(user);
List<Menu> authorities = user.getAuthorities().stream()
.filter(m -> !Cools.isEmpty(m.getAuthority())).collect(Collectors.toList());
UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(
@@ -83,6 +87,7 @@
if (user == null) {
throw new UsernameNotFoundException("Username not found");
}
+ userService.setUserAuthInfo(user);
List<Menu> authorities = user.getAuthorities().stream()
.filter(m -> !Cools.isEmpty(m.getAuthority())).collect(Collectors.toList());
UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(
--
Gitblit v1.9.1