优化文档

This commit is contained in:
click33 2022-06-12 22:43:45 +08:00
parent 3880ed8440
commit 1482780c4f
2 changed files with 8 additions and 6 deletions

View File

@ -5,7 +5,7 @@
无Cookie特指不支持Cookie功能的终端通俗来讲就是我们常说的 —— **前后台分离模式**
常规PC端鉴权方法一般由`Cookie模式`完成,而 Cookie 有两个特性:
常规 Web 端鉴权方法,一般由 `Cookie模式` 完成,而 Cookie 有两个特性:
1. 可由后端控制写入
2. 每次请求自动提交
@ -13,8 +13,8 @@
而在app、小程序等前后台分离场景中一般是没有 Cookie 这一功能的,此时大多数人都会一脸懵逼,咋进行鉴权啊?
见招拆招,其实答案很简单:
- 不能后端控制写入了,就前端自己写入(难点在**后端如何将token传递到前端**
- 每次请求不能自动提交了,那就手动提交(难点在**前端如何将token传递到后端**,同时**后端将其读取出来**
- 不能后端控制写入了,就前端自己写入(难点在**后端如何将 Token 传递到前端**
- 每次请求不能自动提交了,那就手动提交(难点在**前端如何将 Token 传递到后端**,同时**后端将其读取出来**

View File

@ -117,8 +117,8 @@ SaRouter.match( StpUtil.isLogin() ).check( /* 要执行的校验函数 */ );
SaRouter.match( r -> StpUtil.isLogin() ).check( /* 要执行的校验函数 */ );
// 多个条件一起使用
// 功能说明: 必须是 Get 方式的任意请求
SaRouter.match(SaHttpMethod.GET).match("/**").check( /* 要执行的校验函数 */ );
// 功能说明: 必须是 Get 请求 并且 请求路径以 `/user/` 开头
SaRouter.match(SaHttpMethod.GET).match("/user/**").check( /* 要执行的校验函数 */ );
// 可以无限连缀下去
// 功能说明: 同时满足 Get 方式请求, 且路由以 /admin 开头, 路由中间带有 /send/ 字符串, 路由结尾不能是 .js 和 .css
@ -142,6 +142,8 @@ registry.addInterceptor(new SaRouteInterceptor((req, res, handler) -> {
SaRouter.match("/**").check(r -> System.out.println("进入1"));
SaRouter.match("/**").check(r -> System.out.println("进入2")).stop();
SaRouter.match("/**").check(r -> System.out.println("进入3"));
SaRouter.match("/**").check(r -> System.out.println("进入4"));
SaRouter.match("/**").check(r -> System.out.println("进入5"));
})).addPathPatterns("/**");
```
如上示例代码运行至第2条匹配链时会在stop函数处提前退出整个匹配函数从而忽略掉剩余的所有match匹配
@ -149,7 +151,7 @@ registry.addInterceptor(new SaRouteInterceptor((req, res, handler) -> {
除了`stop()`函数,`SaRouter`还提供了 `back()` 函数,用于:停止匹配,结束执行,直接向前端返回结果
``` java
// 执行back函数后将停止匹配也不会进入Controller而是直接将 back参数 作为返回值输出到前端
SaRouter.match("/user/back").back("参数");
SaRouter.match("/user/back").back("要返回到前端的内容");
```
stop() 与 back() 函数的区别在于: