update 方法以及类注解 @Anonymous 替换为 @SaIgnore ;

update 注解 Anonymous 标记为 @Deprecated, 使用 SaIgnore 替换 ;
update 配置 ExcludeUrlProperties 标记为 @Deprecated, 由 Sa-Token 底层根据注解 @SaIgnore 进行过滤 ;
delete Sa-Token 拦截器配置 SaTokenConfig#addInterceptors 删除过时用法 ;
This commit is contained in:
zlyx 2022-09-19 18:48:34 +08:00
parent cf7df6a14c
commit 8635da0074
7 changed files with 22 additions and 13 deletions

View File

@ -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

View File

@ -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());

View File

@ -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<Map<String, Object>> login(@Validated @RequestBody LoginBody loginBody) {
Map<String, Object> ajax = new HashMap<>();
@ -64,7 +64,7 @@ public class SysLoginController {
* @param smsLoginBody 登录信息
* @return 结果
*/
@Anonymous
@SaIgnore
@PostMapping("/smsLogin")
public R<Map<String, Object>> smsLogin(@Validated @RequestBody SmsLoginBody smsLoginBody) {
Map<String, Object> ajax = new HashMap<>();
@ -80,7 +80,7 @@ public class SysLoginController {
* @param xcxCode 小程序code
* @return 结果
*/
@Anonymous
@SaIgnore
@PostMapping("/xcxLogin")
public R<Map<String, Object>> xcxLogin(@NotBlank(message = "{xcx.code.not.blank}") String xcxCode) {
Map<String, Object> ajax = new HashMap<>();
@ -93,7 +93,7 @@ public class SysLoginController {
/**
* 退出登录
*/
@Anonymous
@SaIgnore
@PostMapping("/logout")
public R<Void> logout() {
loginService.logout();

View File

@ -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<Void> register(@Validated @RequestBody RegisterBody user) {
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser")))) {

View File

@ -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

View File

@ -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

View File

@ -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 {