diff --git a/sa-token-doc/doc/start/download.md b/sa-token-doc/doc/start/download.md index 6bb9f288..0c2cd29f 100644 --- a/sa-token-doc/doc/start/download.md +++ b/sa-token-doc/doc/start/download.md @@ -27,9 +27,11 @@ ├── sa-token-core // sa-token核心模块 ├── sa-token-spring-boot-starter // sa-token整合springboot快速集成 ├── sa-token-dao-redis // sa-token整合redis (使用jdk默认序列化方式) - ├── sa-token-dao-redis-jackson // sa-token整合redis (使用jackson序列化方式) - ├── sa-token-demo-springboot // sa-token示例 - ├── sa-token-doc // sa-token开发文档 + ├── sa-token-dao-redis-jackson // sa-token整合redis (使用jackson序列化方式) + ├── sa-token-spring-aop // sa-token整合SpringAOP 注解鉴权 + ├── sa-token-demo-springboot // sa-token示例 + ├── sa-token-demo-jwt // sa-token集成jwt示例 + ├── sa-token-doc // sa-token开发文档 ├──pom.xml ``` diff --git a/sa-token-doc/doc/use/route-check.md b/sa-token-doc/doc/use/route-check.md index 389a1340..56227463 100644 --- a/sa-token-doc/doc/use/route-check.md +++ b/sa-token-doc/doc/use/route-check.md @@ -44,19 +44,19 @@ public class MySaTokenConfig implements WebMvcConfigurer { registry.addInterceptor(SaRouteInterceptor.createPermissionVal("user:add", "user:deelete")).addPathPatterns("/UserController/**"); // 注册一个自定义认证拦截器 (可以写任意认证代码) - registry.addInterceptor(new SaRouteInterceptor(new SaFunction() { - @Override - public void run() { - // 你可以写任意认证代码, 例如: StpUtil.checkLogin(); - System.out.println("---------- 进入自定义认证 --------------- "); - } + registry.addInterceptor(new SaRouteInterceptor(new SaFunction() { + @Override + public void run(HttpServletRequest request, HttpServletResponse response, Object handler) { + // 你可以在这里写任意认证代码, 例如: StpUtil.checkLogin(); + System.out.println("---------- 进入自定义认证 --------------- "); + } })).addPathPatterns("/**"); /** ------ 如果你使用的JDK版本是1.8或以上,上面那一坨可以简写为以下形式 ------ */ // 注册一个自定义认证拦截器 (可以写任意认证代码) - registry.addInterceptor(new SaRouteInterceptor(()->{ - // 你可以写任意认证代码, 例如: StpUtil.checkLogin(); + registry.addInterceptor(new SaRouteInterceptor((request, response, handler)->{ + // 你可以在这里写任意认证代码, 例如: StpUtil.checkLogin(); System.out.println("---------- 进入自定义认证2 --------------- "); })).addPathPatterns("/**"); diff --git a/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaFunction.java b/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaFunction.java index 25f59464..38ef002a 100644 --- a/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaFunction.java +++ b/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaFunction.java @@ -1,5 +1,8 @@ package cn.dev33.satoken.interceptor; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + /** * 执行验证方法的辅助类 * @author kong @@ -10,6 +13,6 @@ public interface SaFunction { /** * 执行验证的方法 */ - public void run(); - + public void run(HttpServletRequest request, HttpServletResponse response, Object handler); + } diff --git a/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaRouteInterceptor.java b/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaRouteInterceptor.java index 5f688c12..a15801df 100644 --- a/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaRouteInterceptor.java +++ b/sa-token-spring-boot-starter/src/main/java/cn/dev33/satoken/interceptor/SaRouteInterceptor.java @@ -237,7 +237,7 @@ public class SaRouteInterceptor implements HandlerInterceptor { getStpLogic().checkPermissionOr(codes); } } else if(this.type == SaRouteInterceptor.CUSTOM) { - function.run(); + function.run(request, response, handler); } // 通过验证