起草[记住我]模式开发文档

This commit is contained in:
shengzhang 2021-03-02 11:01:59 +08:00
parent 0b32a1f552
commit 51b76f07f4
7 changed files with 30 additions and 43 deletions

View File

@ -14,6 +14,7 @@ import com.pj.util.AjaxJson;
import cn.dev33.satoken.exception.NotLoginException;
import cn.dev33.satoken.exception.NotPermissionException;
import cn.dev33.satoken.exception.NotRoleException;
import cn.dev33.satoken.stp.StpUtil;
/**
* 全局异常处理
@ -21,10 +22,10 @@ import cn.dev33.satoken.exception.NotRoleException;
@RestControllerAdvice // 可指定包前缀比如(basePackages = "com.pj.admin")
public class GlobalException {
// 每个控制器之前触发的操作
// 当前类每个方法进入之前触发的操作
@ModelAttribute
public void get(HttpServletRequest request) throws IOException {
StpUtil.checkPermission("user:add");
}

View File

@ -5,7 +5,6 @@ import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@ -232,18 +231,6 @@ public class TestController {
}
@Autowired
TestService TestService;
// 测试AOP注解鉴权 http://localhost:8081/test/testAOP
@RequestMapping("testAOP")
public AjaxJson testAOP() {
System.out.println("testAOP");
TestService.getList();
return AjaxJson.getSuccess();
}
// 测试 浏览器访问 http://localhost:8081/test/test
@RequestMapping("test")
public AjaxJson test(HttpServletResponse response) {
@ -253,7 +240,7 @@ public class TestController {
// StpUtil.setLoginId(10001, new SaLoginModel().setIsTempCookie(true));
// StpUtil.getLoginId();
return AjaxJson.getSuccess();
return AjaxJson.getSuccess("访问成功");
}
// 测试 浏览器访问 http://localhost:8081/test/test2

View File

@ -1,25 +0,0 @@
package com.pj.test;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Service;
import cn.dev33.satoken.annotation.SaCheckLogin;
/**
* 用来测试AOP注解鉴权
* @author kong
*
*/
@Service
public class TestService {
@SaCheckLogin
public List<String> getList() {
System.out.println("getList");
return new ArrayList<String>();
}
}

View File

@ -19,6 +19,7 @@
- [花式token](/use/token-style)
- [框架配置](/use/config)
- [会话治理](/use/search-session)
<!-- - [记住我模式](/use/remember-me) -->
- **进阶**
- [集群、分布式](/senior/dcs)

View File

@ -49,7 +49,6 @@
可能是404了SpringBoot环境下如果访问接口404后会被重定向到`/error`,然后被再次拦截,如果是其它原因,欢迎加群反馈
### 权限可以做成动态的吗?
权限本来就是动态的只有jwt那种模式才是非动态的
@ -71,9 +70,14 @@
步骤:先在配置文件里将`tokenSessionCheckLogin`配置为`false`,然后通过`StpUtil.getTokenSession()`获取Session
### 我只使用header来传输token还需要打开Cookie模式吗
不需要如果只使用header来传输token可以在配置文件关闭Cookie模式`isReadCookie=false`
### 还是有不明白到的地方?
请在`github`提交`issues`或者加入qq群交流群链接在[首页](README?id=交流群)
### 我能为这个框架贡献代码吗?
**可以**请参照首页的提交pr步骤 [贡献代码](README?id=贡献代码)

BIN
sa-token-doc/doc/static/login-view.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

View File

@ -0,0 +1,19 @@
# [记住我]模式
---
如下图所示,一般网站的登录界面都会有一个 [ 记住我 ] 按钮,当你勾选它后,即时你关闭浏览器再次打开网站,也依然会处于登录状态,无须重复验证密码
![../static/login-view.png](../static/login-view.png)
那么在sa-token中如何做到 [ 记住我 ] 功能呢?
### 在sa-token中实现记住我功能
sa-token的登录授权默认就是`记住我`模式,为了实现`非记住我`模式, 你需要做一些适配