放开

                                    我们相遇太快
    &...
在 Sa-Token 框架中,放开特定 URL 的权限验证可以通过配置全局拦截器(`SaInterceptor`)或使用注解(`@SaIgnore`)来实现。这些方式允许指定某些 URL 不经过权限校验,从而实现匿名访问。 ### 使用 `@SaIgnore` 注解 在控制器的方法或类上添加 `@SaIgnore` 注解,可以跳过 Sa-Token 的权限校验。该注解适用于需要公开访问的接口,例如登录接口或注册接口。 ```java import cn.dev33.satoken.annotation.SaIgnore; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class PublicController { @GetMapping("/public") @SaIgnore // 忽略权限校验 public String publicAccess() { return "This is a public endpoint"; } } ``` ### 全局配置匿名访问 URL 通过实现 `SaTokenConfigure` 接口并重写 `addSaTokenNotNeedCheckUrl` 方法,可以配置一组 URL 模式,这些模式匹配的请求将不会进行权限校验。 ```java import cn.dev33.satoken.interceptor.SaInterceptor; import cn.dev33.satoken.spring.SpringMVCUtil; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class SaTokenConfig implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(new SaInterceptor()).addPathPatterns("/**") .excludePathPatterns("/login", "/register"); // 排除不需要权限校验的路径 } } ``` ### 使用场景说明 - **`@SaIgnore` 注解**:适用于单个方法或控制器,适合少量需要开放的接口。 - **全局配置**:适用于多个 URL 或整个项目中需要统一处理的匿名访问需求。 通过上述方法,可以灵活地控制哪些 URL 需要权限校验,哪些 URL 可以匿名访问,从而满足不同的业务需求。 ### 注意事项 - 在放开权限时,需要确保这些 URL 不涉及敏感操作,以免造成安全漏洞。 - 对于需要 Token 验证的接口,仍然需要通过 `@SaCheckLogin` 或其他权限校验注解进行保护。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值