sa-token/sa-token-doc/oauth2/oauth2-dev.md

50 lines
1.6 KiB
Markdown
Raw Normal View History

2021-07-24 01:49:23 +08:00
# Sa-Token-OAuth2 Server端 二次开发用到的所有函数说明
官方示例只提供了基本的授权流程以及userinfo资源的开放如果您需要开放更多的接口则二次开发时用到以下相关API方法
---
## Sa-OAuth2 模块常用方法
``` java
// 根据 id 获取 Client 信息, 如果 Client 为空,则抛出异常
SaOAuth2Util.checkClientModel(clientId);
// 获取 Access-Token如果Access-Token为空则抛出异常
SaOAuth2Util.checkAccessToken(accessToken);
// 获取 Client-Token如果Client-Token为空则抛出异常
SaOAuth2Util.checkClientToken(clientToken);
// 获取 Access-Token 所代表的LoginId
SaOAuth2Util.getLoginIdByAccessToken(accessToken);
// 校验:指定 Access-Token 是否具有指定 Scope
SaOAuth2Util.checkScope(accessToken, scopes);
// 根据 code码 生成 Access-Token
SaOAuth2Util.generateAccessToken(code);
// 根据 Refresh-Token 生成一个新的 Access-Token
SaOAuth2Util.refreshAccessToken(refreshToken);
// 构建 Client-Token
SaOAuth2Util.generateClientToken(clientId, scope);
2022-08-22 05:21:02 +08:00
// 校验 Client-Token 是否含有指定 Scope
SaOAuth2Util.checkClientTokenScope(clientToken, scopes);
2021-07-24 01:49:23 +08:00
// 回收 Access-Token
SaOAuth2Util.revokeAccessToken(accessToken);
// 持久化:用户授权记录
SaOAuth2Util.saveGrantScope(clientId, loginId, scope);
// 获取Refresh-Token Model
SaOAuth2Util.getRefreshToken(refreshToken);
```
2022-10-10 00:59:08 +08:00
详情请参考源码:[码云SaOAuth2Util.java](https://gitee.com/dromara/sa-token/blob/master/sa-token-plugin/sa-token-oauth2/src/main/java/cn/dev33/satoken/oauth2/logic/SaOAuth2Util.java)
2021-07-24 01:49:23 +08:00