From 8635da00746705fc85e4926c0b60c968937aacee Mon Sep 17 00:00:00 2001 From: zlyx <1242874891@qq.com> Date: Mon, 19 Sep 2022 18:48:34 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=96=B9=E6=B3=95=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E7=B1=BB=E6=B3=A8=E8=A7=A3=20@Anonymous=20=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E4=B8=BA=20@SaIgnore=20;=20update=20=E6=B3=A8=E8=A7=A3=20Anony?= =?UTF-8?q?mous=20=E6=A0=87=E8=AE=B0=E4=B8=BA=20@Deprecated,=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=20SaIgnore=20=E6=9B=BF=E6=8D=A2=20;=20update=20?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=20ExcludeUrlProperties=20=E6=A0=87=E8=AE=B0?= =?UTF-8?q?=E4=B8=BA=20@Deprecated,=20=E7=94=B1=20Sa-Token=20=E5=BA=95?= =?UTF-8?q?=E5=B1=82=E6=A0=B9=E6=8D=AE=E6=B3=A8=E8=A7=A3=20@SaIgnore=20?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E8=BF=87=E6=BB=A4=20;=20delete=20Sa-Token=20?= =?UTF-8?q?=E6=8B=A6=E6=88=AA=E5=99=A8=E9=85=8D=E7=BD=AE=20SaTokenConfig#a?= =?UTF-8?q?ddInterceptors=20=E5=88=A0=E9=99=A4=E8=BF=87=E6=97=B6=E7=94=A8?= =?UTF-8?q?=E6=B3=95=20;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/web/controller/common/CaptchaController.java | 4 ++-- .../web/controller/system/SysIndexController.java | 4 ++-- .../web/controller/system/SysLoginController.java | 10 +++++----- .../web/controller/system/SysRegisterController.java | 4 ++-- .../java/com/ruoyi/common/annotation/Anonymous.java | 4 ++++ .../java/com/ruoyi/framework/config/SaTokenConfig.java | 2 -- .../config/properties/ExcludeUrlProperties.java | 7 +++++++ 7 files changed, 22 insertions(+), 13 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CaptchaController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CaptchaController.java index 60c632a92..94630e2e9 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CaptchaController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/CaptchaController.java @@ -1,11 +1,11 @@ package com.ruoyi.web.controller.common; +import cn.dev33.satoken.annotation.SaIgnore; import cn.hutool.captcha.AbstractCaptcha; import cn.hutool.captcha.generator.CodeGenerator; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.RandomUtil; -import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.constant.CacheConstants; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.R; @@ -35,7 +35,7 @@ import java.util.Map; * * @author Lion Li */ -@Anonymous +@SaIgnore @Slf4j @Validated @RequiredArgsConstructor diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java index 1d9889239..698257406 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysIndexController.java @@ -1,6 +1,6 @@ package com.ruoyi.web.controller.system; -import com.ruoyi.common.annotation.Anonymous; +import cn.dev33.satoken.annotation.SaIgnore; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.utils.StringUtils; import lombok.RequiredArgsConstructor; @@ -24,7 +24,7 @@ public class SysIndexController { /** * 访问首页,提示语 */ - @Anonymous + @SaIgnore @GetMapping("/") public String index() { return StringUtils.format("欢迎使用{}后台管理框架,当前版本:v{},请通过前端地址访问。", ruoyiConfig.getName(), ruoyiConfig.getVersion()); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index d4d0570fc..65e11f296 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -1,6 +1,6 @@ package com.ruoyi.web.controller.system; -import com.ruoyi.common.annotation.Anonymous; +import cn.dev33.satoken.annotation.SaIgnore; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.entity.SysMenu; @@ -47,7 +47,7 @@ public class SysLoginController { * @param loginBody 登录信息 * @return 结果 */ - @Anonymous + @SaIgnore @PostMapping("/login") public R> login(@Validated @RequestBody LoginBody loginBody) { Map ajax = new HashMap<>(); @@ -64,7 +64,7 @@ public class SysLoginController { * @param smsLoginBody 登录信息 * @return 结果 */ - @Anonymous + @SaIgnore @PostMapping("/smsLogin") public R> smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) { Map ajax = new HashMap<>(); @@ -80,7 +80,7 @@ public class SysLoginController { * @param xcxCode 小程序code * @return 结果 */ - @Anonymous + @SaIgnore @PostMapping("/xcxLogin") public R> xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) { Map ajax = new HashMap<>(); @@ -93,7 +93,7 @@ public class SysLoginController { /** * 退出登录 */ - @Anonymous + @SaIgnore @PostMapping("/logout") public R logout() { loginService.logout(); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRegisterController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRegisterController.java index 5c3a67712..26445820e 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRegisterController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRegisterController.java @@ -1,6 +1,6 @@ package com.ruoyi.web.controller.system; -import com.ruoyi.common.annotation.Anonymous; +import cn.dev33.satoken.annotation.SaIgnore; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.model.RegisterBody; @@ -28,7 +28,7 @@ public class SysRegisterController extends BaseController { /** * 用户注册 */ - @Anonymous + @SaIgnore @PostMapping("/register") public R register(@Validated @RequestBody RegisterBody user) { if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser")))) { diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Anonymous.java b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Anonymous.java index fe2810083..51eaf082d 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Anonymous.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Anonymous.java @@ -1,5 +1,7 @@ package com.ruoyi.common.annotation; +import cn.dev33.satoken.annotation.SaIgnore; + import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; @@ -10,7 +12,9 @@ import java.lang.annotation.Target; * 匿名访问不鉴权注解 * * @author ruoyi + * @deprecated 将在后续版本使用Sa-Token注解 {@link SaIgnore} 代替 */ +@Deprecated @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java index f53dc0678..ab374aad1 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java @@ -34,14 +34,12 @@ public class SaTokenConfig implements WebMvcConfigurer { public void addInterceptors(InterceptorRegistry registry) { // 注册路由拦截器,自定义验证规则 registry.addInterceptor(new SaInterceptor(handler -> { - ExcludeUrlProperties excludeUrlProperties = SpringUtils.getBean(ExcludeUrlProperties.class); // 登录验证 -- 排除多个路径 SaRouter // 获取所有的 .match("/**") // 排除下不需要拦截的 .notMatch(securityProperties.getExcludes()) - .notMatch(excludeUrlProperties.getExcludes()) // 对未排除的路径进行检查 .check(() -> { // 检查是否登录 是否有token diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/ExcludeUrlProperties.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/ExcludeUrlProperties.java index b77f2377b..99d2eae81 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/ExcludeUrlProperties.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/ExcludeUrlProperties.java @@ -1,5 +1,7 @@ package com.ruoyi.framework.config.properties; +import cn.dev33.satoken.annotation.SaIgnore; +import cn.dev33.satoken.interceptor.SaInterceptor; import cn.hutool.core.util.ReUtil; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.utils.spring.SpringUtils; @@ -13,6 +15,8 @@ import org.springframework.web.servlet.mvc.method.RequestMappingInfo; import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; import org.springframework.web.util.pattern.PathPattern; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.util.*; import java.util.regex.Pattern; @@ -20,7 +24,10 @@ import java.util.regex.Pattern; * 设置注解允许匿名访问的url * * @author Lion Li + * @deprecated 将在后续版本使用Sa-Token注解 {@link SaIgnore} 代替, + * 底层过滤方法详见 {@link SaInterceptor#preHandle(HttpServletRequest, HttpServletResponse, Object)} */ +@Deprecated @Lazy @Component public class ExcludeUrlProperties implements InitializingBean {