From 6b9901499aefeaa55b28b8d597de56695b3f16a6 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Thu, 20 Oct 2022 06:16:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20`sa-token-quick-login`=20?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=E6=8C=87=E5=AE=9A=E6=8B=A6=E6=88=AA=E6=8E=92?= =?UTF-8?q?=E9=99=A4=E8=B7=AF=E7=94=B1=E4=B8=8D=E7=94=9F=E6=95=88=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/pj/test/TestController.java | 2 +- .../src/main/resources/application.yml | 2 +- .../dev33/satoken/quick/SaQuickRegister.java | 23 +++++++++++-------- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/sa-token-demo/sa-token-demo-quick-login/src/main/java/com/pj/test/TestController.java b/sa-token-demo/sa-token-demo-quick-login/src/main/java/com/pj/test/TestController.java index 29fd21ba..5ad5cedb 100644 --- a/sa-token-demo/sa-token-demo-quick-login/src/main/java/com/pj/test/TestController.java +++ b/sa-token-demo/sa-token-demo-quick-login/src/main/java/com/pj/test/TestController.java @@ -21,7 +21,7 @@ public class TestController { + "

资源页 (登录后才可进入本页面)

" + "
" + "

Sa-Token " + SaTokenConsts.VERSION_NO + "

"; - return str; + return str; } } diff --git a/sa-token-demo/sa-token-demo-quick-login/src/main/resources/application.yml b/sa-token-demo/sa-token-demo-quick-login/src/main/resources/application.yml index da460501..8b111db3 100644 --- a/sa-token-demo/sa-token-demo-quick-login/src/main/resources/application.yml +++ b/sa-token-demo/sa-token-demo-quick-login/src/main/resources/application.yml @@ -19,7 +19,7 @@ sa: # 指定拦截路径 # include: /** # 指定排除路径 - # exclude: /sss,/fff + # exclude: /1.jpg # 将本地磁盘的某个路径作为静态资源开放 # dir: file:E:\static diff --git a/sa-token-plugin/sa-token-quick-login/src/main/java/cn/dev33/satoken/quick/SaQuickRegister.java b/sa-token-plugin/sa-token-quick-login/src/main/java/cn/dev33/satoken/quick/SaQuickRegister.java index 337e3ab3..83f92840 100644 --- a/sa-token-plugin/sa-token-quick-login/src/main/java/cn/dev33/satoken/quick/SaQuickRegister.java +++ b/sa-token-plugin/sa-token-quick-login/src/main/java/cn/dev33/satoken/quick/SaQuickRegister.java @@ -41,17 +41,22 @@ public class SaQuickRegister { @Order(SaTokenConsts.ASSEMBLY_ORDER - 1) public SaServletFilter getSaServletFilter() { return new SaServletFilter() - // 拦截路由 & 放行路由 - .addInclude(SaQuickManager.getConfig().getInclude().split(",")) - .addExclude(SaQuickManager.getConfig().getExclude().split(",")) + // 拦截路由 + .addInclude("/**") + // 排除掉登录相关接口,不需要鉴权的 .addExclude("/favicon.ico", "/saLogin", "/doLogin", "/sa-res/**"). // 认证函数: 每次请求执行 - setAuth(r -> { - // 未登录时直接转发到login.html页面 - if (SaQuickManager.getConfig().getAuth() && StpUtil.isLogin() == false) { - SaHolder.getRequest().forward("/saLogin"); - SaRouter.back(); - } + setAuth(obj -> { + SaRouter + .match(SaQuickManager.getConfig().getInclude().split(",")) + .notMatch(SaQuickManager.getConfig().getExclude().split(",")) + .check(r -> { + // 未登录时直接转发到login.html页面 + if (SaQuickManager.getConfig().getAuth() && StpUtil.isLogin() == false) { + SaHolder.getRequest().forward("/saLogin"); + SaRouter.back(); + } + }); }). // 异常处理函数:每次认证函数发生异常时执行此函数