该接口用于开发者服务器根据用户的accessToken从华为服务器查询accessToken的过期时间,获取用户的unionId、openId等。
当应用调用signIn接口完成华为帐号登录授权后,应用客户端获取到用户的accessToken并传递给应用服务端。当涉及以下场景时,应用服务端可以根据accessToken调用本接口:
● 应用服务端需要验证accessToken的过期时间。
● 应用对于用户标识安全性要求较高,需要在应用服务端保存用户标识,需要应用服务器自行从华为服务器获取用户的openId、unionId。
| 承载协议 | HTTPS POST |
| 接口方向 | 开发者服务器->华为服务器 |
| 接口URL | https://api.cloud.huawei.com/rest.php?nsp_fmt=JSON&nsp_svc=huawei.oauth2.user.getTokenInfo |
| 数据格式 | 请求:Content-Type: application/x-www-form-urlencoded 响应:Content-Type: text/plain |
| 参数名称 | 必选(M)/可选(O) | 类型 | 参数说明 |
|---|---|---|---|
| open_id | M | string | 如果需要获取用户的openId,当前必须传入固定值“OPENID”。 |
| access_token | M | string | 用户的accessToken,调用signIn接口时返回给应用客户端。 |
| 参数名称 | 必选(M)/可选(O) | 类型 | 参数含义 |
|---|---|---|---|
| union_id | O | string | 如果应用启用了UnionId,此参数返回用户的unionId,有关unionId的详细描述请参见signIn接口的unionId参数。 |
| scope | O | string | 用户授权地址列表。有多个授权地址时以空格符分隔。 |
| open_id | O | string | 如果请求参数open_id配置为“OPENID”,则此参数将返回用户的openId标识,否则不返回该参数。 |
| expire_in | M | int | 用户accessToken的过期时间,以秒为单位。 |
| client_id | M | string | 应用ID,在创建应用后为应用分配的唯一标识。 |
返回码在响应消息头部的NSP_STATUS字段,错误描述为JSON格式。
| 错误码 | 错误描述 | 错误原因 |
|---|---|---|
| 102 | {"error":"invalid session"} | accessToken格式不合法,如没有urlencode。 |
| 6 | {"error":"session timeout"} | acessToken过期。 |
| 类型 | 样例 |
|---|---|
| 请求消息样例 | POST https://api.cloud.huawei.com/rest.php?nsp_fmt=JSON&nsp_svc=huawei.oauth2.user.getTokenInfo Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip Content-Length: 131 Connection: Keep-Alive open_id=OPENID&access_token=CFsCPrF8B4prsK2yYenj6l9VvmYB%2F7LvM%2FayXt%2BSOiwzmSIWu%2FqHComneixAl3tBVONd6IGvbObDpaAWivA5%2Fg%3D%3D |
| 返回消息样例 | HTTP/1.1 200 OK Pragma: no-cache Cache-Control: no-store Expires: Thu, 01 Jan 1970 00:00:00 GMT DGW.id: 0-254b599c-78b7-4bea-996e-b0e3752e3928-139 Content-Type: text/plain; charset=UTF-8 Transfer-Encoding: chunked { "union_id":"MDFCMZtjzibdDT5rylM06p9azTbSbiaQFPjX6A3Lp2vPolYw", "scope":"https://www.huawei.com/health/health.bp.readonly https://www.huawei.com/health/motionpath", "open_id":"MDFAMzAwMDE3NDczQGZmZjYzM2FhOWYxOTYwNzgyYmQ1YWMxZjAyMjQxNjVhQDc4NDNmNTRiaNmFmODZmYWQ2YzgyZjEzNTRiaOTNmMmUxYTE4YzYyMjMwNmMyNzY0YWFhN2RlZTQ0", "expire_in":3600, "client_id":"300017473" } |