diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java b/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java index f128bcac..f56ef294 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/test/GlobalException.java @@ -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"); } diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java b/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java index 9947c529..bebc7bd0 100644 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java +++ b/sa-token-demo-springboot/src/main/java/com/pj/test/TestController.java @@ -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 diff --git a/sa-token-demo-springboot/src/main/java/com/pj/test/TestService.java b/sa-token-demo-springboot/src/main/java/com/pj/test/TestService.java deleted file mode 100644 index 0ef61e62..00000000 --- a/sa-token-demo-springboot/src/main/java/com/pj/test/TestService.java +++ /dev/null @@ -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 getList() { - System.out.println("getList"); - return new ArrayList(); - } - -} diff --git a/sa-token-doc/doc/_sidebar.md b/sa-token-doc/doc/_sidebar.md index bd40ca41..a4e03833 100644 --- a/sa-token-doc/doc/_sidebar.md +++ b/sa-token-doc/doc/_sidebar.md @@ -19,6 +19,7 @@ - [花式token](/use/token-style) - [框架配置](/use/config) - [会话治理](/use/search-session) + - **进阶** - [集群、分布式](/senior/dcs) diff --git a/sa-token-doc/doc/more/common-questions.md b/sa-token-doc/doc/more/common-questions.md index 8683fa63..39ac7730 100644 --- a/sa-token-doc/doc/more/common-questions.md +++ b/sa-token-doc/doc/more/common-questions.md @@ -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=贡献代码) \ No newline at end of file +**可以**,请参照首页的提交pr步骤 ,[贡献代码](README?id=贡献代码) + diff --git a/sa-token-doc/doc/static/login-view.png b/sa-token-doc/doc/static/login-view.png new file mode 100644 index 00000000..76f4b837 Binary files /dev/null and b/sa-token-doc/doc/static/login-view.png differ diff --git a/sa-token-doc/doc/use/remember-me.md b/sa-token-doc/doc/use/remember-me.md new file mode 100644 index 00000000..6d2940a6 --- /dev/null +++ b/sa-token-doc/doc/use/remember-me.md @@ -0,0 +1,19 @@ +# [记住我]模式 +--- + +如下图所示,一般网站的登录界面都会有一个 [ 记住我 ] 按钮,当你勾选它后,即时你关闭浏览器再次打开网站,也依然会处于登录状态,无须重复验证密码 + +![../static/login-view.png](../static/login-view.png) + +那么在sa-token中,如何做到 [ 记住我 ] 功能呢? + + +### 在sa-token中实现记住我功能 + +sa-token的登录授权,默认就是`记住我`模式,为了实现`非记住我`模式, 你需要做一些适配 + +要 + + + +