dromara / Sa-Token

一个轻量级 Java 权限认证框架,让鉴权变得简单、优雅!—— 登录认证、权限认证、分布式Session会话、微服务网关鉴权、单点登录、OAuth2.0

Home Page:https://sa-token.cc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

排除失效

poying9464 opened this issue · comments

使用版本:

1.37.0

涉及的功能模块:

sa-token-reactor-spring-boot-starter 网关拦截

测试步骤:

        SaReactorFilter saReactorFilter = new SaReactorFilter()
                // 拦截排除地址 这里失效,无法排除 /v1/user/login 
                .addExclude("/favicon.ico", "/v1/user/login")
                .addInclude("/**")
                .setAuth(obj -> {
                    // 登录校验 -- 拦截所有路由,并排除/user/login 排除失效
                    SaRouter.match("/**", "/v1/user/login", r -> StpUtil.checkLogin());

                    // 权限认证 -- 不同模块, 校验不同权限
                    SaRouter.match("/v1/user/**", r -> StpUtil.checkPermission("user"));
                    SaRouter.match("/v1/food/**", r -> StpUtil.checkPermission("food"));
                    SaRouter.match("/v1/ingredient/**", r -> StpUtil.checkPermission("ingredient"));

                    
                })
          
                .setError(e -> {
                    throw new RuntimeException("权限不足");
                });
        return saReactorFilter;
  • 我经过以下步骤测试:

  • 得出以下结果:

  • 其中第 xx 行的代码输出表现 和文档上描述的不一致:

  • 我的理解是:

请问,是我的理解不对,还是文档出了问题?

参考排查
image