刷新Access Token
Access Token的有效期默认是2小时(7200秒)最长24小时(86400),过期后需要用户重新授权才能获得新的Access Token。本步骤可以实现授权自动续期,避免要求用户再次授权的操作,提升用户体验。
# 请求说明
POST https://{your_domain}/api/v1/oauth2/token
# 请求头
参数名 | 中文名称 | 必须 | 示例值 | 描述 |
---|---|---|---|---|
Authorization | 认证信息 | 必须 | Basic UnFCMNOWk9xWA== | 使用client_id和client_secret进行basic64认证, 格式为: base64(client_id:client_secret) |
Content-Type | 数据类型 | 必须 | application/x-www-form-urlencoded | 使用表单方式提交参数 |
# 请求示例
POST https://{your_domain}/api/v1/oauth2/token
Authorization: Basic UnFCMkhKdGt6bFU...aT0NObkk4NlNOWk9xWA==
Content-Type: application/x-www-form-urlencoded
grant_type=refresh_token&refresh_token=wuGzSMMTjb4YhRUOjXHj-t-QD84
# 请求参数
参数名 | 中文名称 | 必须 | 示例值 | 描述 |
---|---|---|---|---|
grant_type | 授权类型 | 必须 | refresh_token | 此值固定为refresh_token |
refresh_token | 刷新令牌 | 必须 | wuGzSMMTjb4YhRUOjXHj-t-QD84 | refresh token有效期最长30天 |
# 返回示例
正确返回示例
HTTP Status: 200 OK
{
"access_token": "Z43T3KWH9lecmy3H1IaCI...XRmsXaA",
"token_type": "Bearer",
"refresh_token": "WEAFOmOJ-A4LOhF_I39DvJuqxP0...XkFlFA",
"expires_in": 7199,
"scope": "get_user_info"
}
grant_type参数值不正确
HTTP Status: 400 BAD REQUEST
{
"error": "unsupported_grant_type",
"error_description": "Unsupported grant type"
}
refresh token值不正确
HTTP Status: 400 BAD REQUEST
{
"error": "invalid_grant",
"error_description": "Invalid refresh token: wuGzSMMTjb4YhRUOjXHj-t-QD84"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 返回参数
如果成功返回,即可在返回信息中获取到Access Token。
参数名 | 中文名称 | 必须 | 示例值 | 描述 |
---|---|---|---|---|
access_token | 授权令牌 | 必须 | 3oDi8mk0q9mnTpGxcHu3Gi_vX4o | 授权服务器返回给第三方应用的授权令牌。 |
expires_in | 授权令牌的有效期 | 必须 | 7199 | 授权服务器返回给应用的访问票据的有效期。注意:有效期以秒为单位。 |
refresh_token | 刷新令牌 | wuGzSMMTjb4YhRUOjXHj-t-QD84 | ||
token_type | 令牌类型 | 必须 | Bearer | |
scope | 授权范围 | 必须 | get_user_info |