Update oauth2.md

This commit is contained in:
p79813206 2023-03-08 11:05:39 +08:00
parent 5b6ed3d966
commit 1e12aa15f5
1 changed files with 4 additions and 0 deletions

View File

@ -1,11 +1,14 @@
1. 为了构建更好的红山生态环境我们推出了基于OAuth2的API版本。
API 接口使用方式以及Url都参照GitHub为了各位开发者更好的兼容已经存在的第三方应用。
# API 使用条款
未经用户允许,不准爬取或存储用户的资源。
禁止滥用 API请求频率过快将导致请求终止。
OAuth2 认证基本流程
# OAuth2 获取 AccessToken 认证步骤
### 1. 授权码模式
* 应用通过 浏览器 或 Webview 将用户引导到红山三方认证页面上( GET请求
https://www.osredm.com/oauth/authorize?client_id={client_id}&redirect_uri={redirect_uri}&response_type=code
@ -22,6 +25,7 @@ https://www.osredm.com/oauth/token?grant_type=authorization_code&code={code}&cli
https://www.osredm.com/oauth/token?grant_type=refresh_token&refresh_token={refresh_token}
注意:如果获取 access_token 返回 403可能是没有设置User-Agent的原因。
详见获取Token时服务端响应状态403是什么情况
### 2. 密码模式
* 用户向客户端提供邮箱地址和密码。客户端将邮箱地址和密码发给红山认证服务器,并向红山认证服务器请求令牌。( POST请求。Content-Type: application/x-www-form-urlencoded
curl -X POST --data-urlencode "grant_type=password" --data-urlencode "username={email}" --data-urlencode "password={password}" --data-urlencode "client_id={client_id}" --data-urlencode "client_secret={client_secret}" --data-urlencode "scope=projects user_info issues notes" https://www.osredm.com/oauth/token