GAS 开放授权登录接口
基本信息
接口描述: 提供开放授权登录(OAuth)相关功能,包括客户端登录获取auth_token、应用信息获取、用户授权、access_token验证及退出登录等。
接口地址: https://api.chinadlrs.com/developer/oauth.php
请求方式: POST
响应格式: JSON

公共参数
查询参数 (Query Parameters)
| 参数名 | 类型 | 必填 | 描述 | 默认值 |
|---|---|---|---|---|
| type | number | 是 | 操作类型(1-5) | 无 |
| lang | string | 否 | 响应语言(zh/en) | zh |
查询参数
查询参数通过在接口地址后直接拼接的方式传递,地址和参数之间用 ? 分隔,多个参数之间用 & 连接。
例如操作类型为1、响应语言为英文的接口地址为:
https://api.chinadlrs.com/developer/oauth.php?type=1&lang=en
请求头 (Headers)
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| Content-Type | string | 是 | 必须设置为 application/json |
操作类型说明
1. 客户端获取授权令牌 (type=1)
功能描述: 客户端使用appid和apptoken获取授权令牌(auth_token),在跳转网页前调用。
请求体 (Body)
| 参数名 | 类型 | 必填 | 描述 | 示例 |
|---|---|---|---|---|
| appid | int | 是 | 应用唯一标识符 | 1 |
| apptoken | string | 是 | 应用授权令牌 | "BXls0PFLMHSuZyWw" |
数据加密
apptoken 参数是经过加密的字符串,用于验证应用权限和保护数据安全
具体的加密算法请参考《数据加密说明文档》
请求示例
{
"appid": 1,
"apptoken": "BXls0PFLMHSuZyWw"
}
响应参数
| 参数名 | 类型 | 描述 | 示例 |
|---|---|---|---|
| code | number | 状态码 | 200 |
| data | object | 响应数据对象 | |
| data.auth_token | string | 加密后的授权令牌 | "n9K7iRLJYLhZnupJHoVFbw==" |
| msg | string | 响应消息 | "操作成功" |
2. 打开网页端供用户授权登录
网页端地址: https://gas.chinadlrs.com/oauth
查询参数 (Query Parameters)
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| appid | int | 是 | 应用唯一标识符 |
| token | string | 是 | 授权令牌(加密后的auth_token) |
查询参数
查询参数通过在网页地址后直接拼接的方式传递,地址和参数之间用 ? 分隔,多个参数之间用 & 连接。
例如appid为1、加密后的auth_token为abc的网页地址为:
https://gas.chinadlrs.com/oauth?appid=1&token=abc
3. 验证 access_token (type=4)
功能描述: 客户端验证授权是否有效,获取用户访问令牌(access_token)。
请求体 (Body)
| 参数名 | 类型 | 必填 | 描述 | 示例 |
|---|---|---|---|---|
| appid | int | 是 | 应用唯一标识符 | 1 |
| auth_token | string | 是 | 操作类型1获取的授权令牌 | "n9K7iRLJYLhZnupJHoVFbw==" |
请求示例
{
"appid": 1,
"auth_token": "n9K7iRLJYLhZnupJHoVFbw=="
}
响应参数
| 参数名 | 类型 | 描述 | 示例 |
|---|---|---|---|
| code | number | 状态码 | 200 |
| data | object | 响应数据对象 | |
| data.access_token | string | 加密后的访问令牌 | "123abc" |
| data.email | string | 用户邮箱 | "user@example.com" |
| data.user_group | string | 用户权限组(逗号分隔) | "0,2" |
| msg | string | 响应消息 | "操作成功" |
4. 退出登录 (type=5)
功能描述: 用户退出应用授权
请求体 (Body)
| 参数名 | 类型 | 必填 | 描述 | 示例 |
|---|---|---|---|---|
| appid | int | 是 | 应用唯一标识符 | 1 |
| string | 是 | 用户邮箱 | "user@example.com" | |
| access_token | string | 是 | 访问令牌 | "p20T7UE/65lwBon6aSNYV7WPzbAvCvdObnK1y+pSH10=" |
请求示例
{
"appid": 1,
"email": "user@example.com",
"access_token": "p20T7UE/65lwBon6aSNYV7WPzbAvCvdObnK1y+pSH10="
}
响应参数
| 参数名 | 类型 | 描述 | 示例 |
|---|---|---|---|
| code | number | 状态码 | 200 |
| data | null | 无数据 | |
| msg | string | 响应消息 | "退出登录成功" |
成功响应示例
{
"code": 200,
"data": {
"auth_token": "n9K7iRLJYLhZnupJHoVFbw=="
},
"msg": "操作成功"
}
错误响应示例
{
"code": 400,
"data": null,
"msg": "参数缺失"
}
状态码说明
| 状态码 | 描述 | 解决方案 |
|---|---|---|
| 200 | 操作成功 | |
| 400 | 请求参数缺失 | 检查必填参数是否提供 |
| 400 | type参数无效 | 确认type参数值在1-5范围内 |
| 401 | Token验证失败 | 检查apptoken是否正确 |
| 401 | 授权信息无效 | 检查auth_token是否有效 |
| 401 | 用户未登录 | 验证用户登录状态 |
| 401 | 登录已失效 | 重新登录获取有效令牌 |
| 404 | 应用不存在 | 验证appid是否正确 |
| 429 | 请求过于频繁 | 稍后再试,或减少请求频率 |
| 500 | 数据库操作失败 | 联系系统管理员 |