fix: 修复广场作品列表登录状态丢失问题 - 扩展可选认证路径包含/work/list和/work/categories

This commit is contained in:
2026-02-13 18:17:44 +08:00
parent 3e59fb0aac
commit 297b254ae6
2 changed files with 4 additions and 4 deletions

View File

@@ -127,9 +127,8 @@ public class WebConfig implements WebMvcConfigurer {
"/user/check", "/user/check",
"/user/wx-login", "/user/wx-login",
"/user/refresh-token", "/user/refresh-token",
// 公开接口 - 作品列表和分类 // 公开接口 - 作品相关由JwtAuthInterceptor内部处理可选认证
"/work/list", // /work/list, /work/categories, /work/{id} 不在此排除,通过拦截器内部正则匹配实现可选认证
"/work/categories",
// 分类和Banner // 分类和Banner
"/category/**", "/category/**",
"/banner/**", "/banner/**",

View File

@@ -22,8 +22,9 @@ public class JwtAuthInterceptor implements HandlerInterceptor {
private final JwtUtil jwtUtil; private final JwtUtil jwtUtil;
// 公开路径可选认证有token则解析无token也放行 // 公开路径可选认证有token则解析无token也放行
// 匹配: /work/list, /work/categories, /work/{数字ID}
private static final java.util.regex.Pattern OPTIONAL_AUTH_PATTERN = private static final java.util.regex.Pattern OPTIONAL_AUTH_PATTERN =
java.util.regex.Pattern.compile("^/work/\\d+$"); java.util.regex.Pattern.compile("^/work/(list|categories|\\d+)$");
@Override @Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {