diff --git a/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java b/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java index fdd4c1b..d044ec0 100644 --- a/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java +++ b/src/main/java/com/guo/learningprogresstracker/config/SaTokenConfigure.java @@ -4,11 +4,13 @@ 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; @Configuration @Slf4j +@Profile("prod") public class SaTokenConfigure implements WebMvcConfigurer { // 注册拦截器 diff --git a/src/main/java/com/guo/learningprogresstracker/config/SaTokenDevFilterConfig.java b/src/main/java/com/guo/learningprogresstracker/config/SaTokenDevFilterConfig.java new file mode 100644 index 0000000..a7e4203 --- /dev/null +++ b/src/main/java/com/guo/learningprogresstracker/config/SaTokenDevFilterConfig.java @@ -0,0 +1,30 @@ +package com.guo.learningprogresstracker.config; + +import cn.dev33.satoken.context.SaHolder; +import cn.dev33.satoken.filter.SaServletFilter; +import cn.dev33.satoken.router.SaRouter; +import cn.dev33.satoken.stp.StpUtil; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; + +@Configuration +@Profile("dev") +public class SaTokenDevFilterConfig { + + @Bean + public SaServletFilter getSaServletFilter() { + return new SaServletFilter() + .addInclude("/**") + .addExclude("/login") + .setBeforeAuth(r -> { + if ("OPTIONS".equalsIgnoreCase(SaHolder.getRequest().getMethod())) { + SaHolder.getResponse().setStatus(200); + SaRouter.back(); + } + }) + .setAuth(obj -> { + StpUtil.checkLogin(); + }); + } +}