From af0dcc49db9af8305012387b704955e200a80a43 Mon Sep 17 00:00:00 2001 From: guo <1716967236@qq.com> Date: Sun, 26 Oct 2025 18:34:23 +0800 Subject: [PATCH] =?UTF-8?q?feat(N/A):=20=E9=85=8D=E7=BD=AEWebMvcConfig?= =?UTF-8?q?=EF=BC=8C=E8=A7=A3=E5=86=B3=E8=B7=A8=E5=9F=9F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 4e01a28435b28532654e9d70c6c5b98cb05b14c9) --- .../config/DevWebCorsConfig.java | 29 ------------------- .../config/SaTokenConfigure.java | 24 --------------- ...DevConfigure.java => WebMvcDevConfig.java} | 21 +++++++++++++- ...bCorsConfig.java => WebMvcProdConfig.java} | 17 +++++++++-- 4 files changed, 35 insertions(+), 56 deletions(-) delete mode 100644 src/main/java/com/guo/learningprogresstracker/config/DevWebCorsConfig.java delete mode 100644 src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java rename src/main/java/com/guo/learningprogresstracker/config/{SaTokenDevConfigure.java => WebMvcDevConfig.java} (60%) rename src/main/java/com/guo/learningprogresstracker/config/{ProdWebCorsConfig.java => WebMvcProdConfig.java} (61%) diff --git a/src/main/java/com/guo/learningprogresstracker/config/DevWebCorsConfig.java b/src/main/java/com/guo/learningprogresstracker/config/DevWebCorsConfig.java deleted file mode 100644 index 51eead9..0000000 --- a/src/main/java/com/guo/learningprogresstracker/config/DevWebCorsConfig.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.guo.learningprogresstracker.config; - -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Profile; -import org.springframework.web.servlet.config.annotation.CorsRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -import java.util.Arrays; - -@Profile("dev") -@Slf4j -@Configuration -@RequiredArgsConstructor -public class DevWebCorsConfig implements WebMvcConfigurer { - - private final CorsProperties corsProperties; - - @Override - public void addCorsMappings(CorsRegistry registry) { - log.info("允许cors的地址配置:{}", Arrays.toString(corsProperties.getAllowedOrigins())); - registry.addMapping("/**") - .allowedOriginPatterns("*") - .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") - .allowedHeaders("*") - .allowCredentials(null == corsProperties.getAllowCredentials() || corsProperties.getAllowCredentials()); - } -} diff --git a/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java b/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java deleted file mode 100644 index 18acbca..0000000 --- a/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.guo.learningprogresstracker.config; - -import cn.dev33.satoken.interceptor.SaInterceptor; -import cn.dev33.satoken.stp.StpUtil; -import lombok.extern.slf4j.Slf4j; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Profile; -import org.springframework.web.servlet.config.annotation.InterceptorRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -@Profile("prod") -@Configuration -@Slf4j -public class SaTokenConfigure implements WebMvcConfigurer { - - // 注册拦截器 - @Override - public void addInterceptors(InterceptorRegistry registry) { - // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验。 - registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) - .addPathPatterns("/**") - .excludePathPatterns("/login"); - } -} diff --git a/src/main/java/com/guo/learningprogresstracker/config/SaTokenDevConfigure.java b/src/main/java/com/guo/learningprogresstracker/config/WebMvcDevConfig.java similarity index 60% rename from src/main/java/com/guo/learningprogresstracker/config/SaTokenDevConfigure.java rename to src/main/java/com/guo/learningprogresstracker/config/WebMvcDevConfig.java index cc44b65..34f3200 100644 --- a/src/main/java/com/guo/learningprogresstracker/config/SaTokenDevConfigure.java +++ b/src/main/java/com/guo/learningprogresstracker/config/WebMvcDevConfig.java @@ -3,6 +3,7 @@ package com.guo.learningprogresstracker.config; import cn.dev33.satoken.context.SaHolder; import cn.dev33.satoken.interceptor.SaInterceptor; import cn.dev33.satoken.stp.StpUtil; +import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Profile; @@ -10,10 +11,18 @@ import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +import java.util.Arrays; + +/** + * @author Administrator + */ @Profile("dev") @Configuration @Slf4j -public class SaTokenDevConfigure implements WebMvcConfigurer { +@RequiredArgsConstructor +public class WebMvcDevConfig implements WebMvcConfigurer { + + private final CorsProperties corsProperties; // 注册拦截器 @Override @@ -28,4 +37,14 @@ public class SaTokenDevConfigure implements WebMvcConfigurer { .addPathPatterns("/**") .excludePathPatterns("/login"); } + + @Override + public void addCorsMappings(CorsRegistry registry) { + log.info("允许cors的地址配置:{}", Arrays.toString(corsProperties.getAllowedOrigins())); + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") + .allowedHeaders("*") + .allowCredentials(null == corsProperties.getAllowCredentials() || corsProperties.getAllowCredentials()); + } } diff --git a/src/main/java/com/guo/learningprogresstracker/config/ProdWebCorsConfig.java b/src/main/java/com/guo/learningprogresstracker/config/WebMvcProdConfig.java similarity index 61% rename from src/main/java/com/guo/learningprogresstracker/config/ProdWebCorsConfig.java rename to src/main/java/com/guo/learningprogresstracker/config/WebMvcProdConfig.java index e6b03df..5a7b489 100644 --- a/src/main/java/com/guo/learningprogresstracker/config/ProdWebCorsConfig.java +++ b/src/main/java/com/guo/learningprogresstracker/config/WebMvcProdConfig.java @@ -1,19 +1,22 @@ package com.guo.learningprogresstracker.config; +import cn.dev33.satoken.interceptor.SaInterceptor; +import cn.dev33.satoken.stp.StpUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Profile; import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import java.util.Arrays; @Profile("prod") -@Slf4j @Configuration @RequiredArgsConstructor -public class ProdWebCorsConfig implements WebMvcConfigurer { +@Slf4j +public class WebMvcProdConfig implements WebMvcConfigurer { private final CorsProperties corsProperties; @@ -26,4 +29,14 @@ public class ProdWebCorsConfig implements WebMvcConfigurer { .allowedHeaders("*") .allowCredentials(true); } + + // 注册拦截器 + @Override + public void addInterceptors(InterceptorRegistry registry) { + // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验。 + registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) + .addPathPatterns("/**") + .excludePathPatterns("/login"); + } + }