Bladeren bron

fix 修复 gateway 白名单热更不生效问题

疯狂的狮子li 4 jaren geleden
bovenliggende
commit
ffdeb0ba4f
1 gewijzigde bestanden met toevoegingen van 15 en 12 verwijderingen
  1. 15 12
      ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java

+ 15 - 12
ruoyi-gateway/src/main/java/com/ruoyi/gateway/filter/AuthFilter.java

@@ -11,33 +11,36 @@ import org.springframework.context.annotation.Configuration;
 
 
 /**
 /**
  * [Sa-Token 权限认证] 拦截器
  * [Sa-Token 权限认证] 拦截器
+ *
  * @author Lion Li
  * @author Lion Li
  */
  */
 @Configuration
 @Configuration
 public class AuthFilter {
 public class AuthFilter {
 
 
-    // 注册 Sa-Token全局过滤器
+    /**
+     * 注册 Sa-Token 全局过滤器
+     */
     @Bean
     @Bean
     public SaReactorFilter getSaReactorFilter(IgnoreWhiteProperties ignoreWhite) {
     public SaReactorFilter getSaReactorFilter(IgnoreWhiteProperties ignoreWhite) {
         return new SaReactorFilter()
         return new SaReactorFilter()
             // 拦截地址
             // 拦截地址
             .addInclude("/**")
             .addInclude("/**")
-            // 开放地址
-            .setExcludeList(ignoreWhite.getWhites())
             .addExclude("/favicon.ico", "/actuator/**")
             .addExclude("/favicon.ico", "/actuator/**")
             // 鉴权方法:每次访问进入
             // 鉴权方法:每次访问进入
             .setAuth(obj -> {
             .setAuth(obj -> {
                 // 登录校验 -- 拦截所有路由
                 // 登录校验 -- 拦截所有路由
-                SaRouter.match("/**", r -> {
-                    // 检查是否登录 是否有token
-                    StpUtil.checkLogin();
+                SaRouter.match("/**")
+                    .notMatch(ignoreWhite.getWhites())
+                    .check(r -> {
+                        // 检查是否登录 是否有token
+                        StpUtil.checkLogin();
 
 
-                    // 有效率影响 用于临时测试
-                    // if (log.isDebugEnabled()) {
-                    //     log.debug("剩余有效时间: {}", StpUtil.getTokenTimeout());
-                    //     log.debug("临时有效时间: {}", StpUtil.getTokenActivityTimeout());
-                    // }
-                });
+                        // 有效率影响 用于临时测试
+                        // if (log.isDebugEnabled()) {
+                        //     log.debug("剩余有效时间: {}", StpUtil.getTokenTimeout());
+                        //     log.debug("临时有效时间: {}", StpUtil.getTokenActivityTimeout());
+                        // }
+                    });
             }).setError(e -> SaResult.error("认证失败,无法访问系统资源").setCode(HttpStatus.UNAUTHORIZED));
             }).setError(e -> SaResult.error("认证失败,无法访问系统资源").setCode(HttpStatus.UNAUTHORIZED));
     }
     }
 }
 }