mirror of
https://gitee.com/dromara/sa-token.git
synced 2024-11-30 02:48:10 +08:00
修复路由鉴权文档示例错误之处
This commit is contained in:
parent
a0715b8aea
commit
854774a1f1
@ -10,10 +10,11 @@
|
||||
### 报错:非Web上下文无法获取Request?
|
||||
报错原因:Sa-Token 的部分 API 只能在 Web 上下文中调用,报这个错说明你调用 Sa-Token 的地方不在 Web 上下文中,请排查:
|
||||
|
||||
1. 在 main 在方法中调用了 Sa-Token 的API
|
||||
2. 在带有 `@Async` 注解的方法中调用了 Sa-Token 的API
|
||||
3. 在一些丢失web上下文的子线程中调用了 Sa-Token 的API,例如 `MyBatis-Plus` 的 `insertFill` 自动填充
|
||||
4. 在一些非 Http 协议的 RPC 框架中(例如 Dubbo)调用了 Sa-Token 的API
|
||||
1. 是否在 main 方法中调用了 Sa-Token 的API
|
||||
2. 是否在带有 `@Async` 注解的方法中调用了 Sa-Token 的API
|
||||
3. 是否在一些丢失web上下文的子线程中调用了 Sa-Token 的API,例如 `MyBatis-Plus` 的 `insertFill` 自动填充
|
||||
4. 是否在一些非 Http 协议的 RPC 框架中(例如 Dubbo)调用了 Sa-Token 的API
|
||||
5. 是否在 SpringBoot 启动初始化的方法中调用了 Sa-Token 的API,例如`@PostConstruct`
|
||||
|
||||
解决方案:先获取你想要的值,再把这个值当做一个参数传递到这些方法中,而不是直接从方法内调用 Sa-Token 的API。
|
||||
|
||||
|
@ -103,10 +103,6 @@ public class SaTokenConfigure implements WebMvcConfigurer {
|
||||
使用 `SaRouter.stop()` 可以提前退出匹配链,例:
|
||||
|
||||
``` java
|
||||
// 原写法
|
||||
registry.addInterceptor(SaRouteInterceptor.createPermissionVal("user")).addPathPatterns("/user/**");
|
||||
|
||||
// 改为以下方式,效果同上
|
||||
registry.addInterceptor(new SaRouteInterceptor((req, res, handler) -> {
|
||||
SaRouter.match("/**", () -> System.out.println("进入1"));
|
||||
SaRouter.match("/**", () -> {System.out.println("进入2"); SaRouter.stop();});
|
||||
@ -115,11 +111,14 @@ registry.addInterceptor(new SaRouteInterceptor((req, res, handler) -> {
|
||||
```
|
||||
如上示例,代码运行至第2条匹配链时,会在stop函数处提前退出整个匹配函数,从而忽略掉剩余的所有match匹配
|
||||
|
||||
除了`stop()`函数,`SaRouter`还提供了 `SaRouter.back()` 函数,用于:停止匹配,结束执行,直接向前端返回结果
|
||||
除了`stop()`函数,`SaRouter`还提供了 `back()` 函数,用于:停止匹配,结束执行,直接向前端返回结果
|
||||
``` java
|
||||
SaRouter.match("/user/back", () -> SaRouter.back("执行back函数后将停止匹配,也不会进入Controller,而是直接将此参数作为返回值输出到前端"));
|
||||
```
|
||||
|
||||
`stop()` 与 `back()` 函数的区别在于:
|
||||
- `SaRouter.stop()` 会停止匹配,进入Controller。
|
||||
- `SaRouter.back()` 会停止匹配,直接返回结果到前端。
|
||||
|
||||
|
||||
|
||||
|
@ -251,6 +251,9 @@
|
||||
<a href="http://www.dchealth.com/" target="_blank" title="神州医疗">
|
||||
<img src="https://oss.dev33.cn/sa-token/com/shenzhouyiliao.png">
|
||||
</a>
|
||||
<a href="https://www.quoting.cn/" target="_blank" title="引止">
|
||||
<img src="https://oss.dev33.cn/sa-token/com/yinzhi.png">
|
||||
</a>
|
||||
|
||||
</div>
|
||||
<div style="height: 10px; clear: both;"></div>
|
||||
|
Loading…
Reference in New Issue
Block a user