刷新token
典型场景
应用服务器通过鉴权接口获取到的accessToken是有有效时间的,在accessToken快过期时,应用服务器通过调用此接口,获取新的accessToken。
接口功能
支持应用服务器在accessToken到期前,从物联网平台获取新的accessToken。
接口原型
请求方法 |
POST |
---|---|
请求地址 |
https://server:port/iocm/app/sec/v1.1.0/refreshToken |
传输协议 |
HTTPS |
请求参数
参数 |
必选/可选 |
类型 |
位置 |
描述 |
---|---|---|---|---|
appId |
必选 |
String(256) |
body |
访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。 |
secret |
必选 |
String(256) |
body |
访问物联网平台的应用密钥,与appId对应,在物联网平台创建应用时由平台分配获得。 |
refreshToken |
必选 |
String(256) |
body |
刷新token,用来获取一个新的accessToken。refreshToken在调用鉴权接口或刷新token接口时获得。 |
响应参数
Status Code: 200 OK
参数 |
类型 |
描述 |
---|---|---|
scope |
String(256) |
申请的权限范围,参数值固定为default。 |
tokenType |
String(256) |
鉴权token的类型,参数值固定为Bearer 。 |
expiresIn |
Integer(256) |
accessToken的有效时间,参数值固定为3600秒。 |
accessToken |
String(256) |
鉴权参数,访问物联网平台API接口的凭证。 |
refreshToken |
String(256) |
鉴权参数,有效时间为1个月,用于“刷新Token”接口。当accessToken即将过期时,可通过“刷新Token”接口来获取新的accessToken。 |
请求示例
Method: POST request: https://server:port/iocm/app/sec/v1.1.0/refreshToken Content-Type: application/json Body: { "appId": "******", "secret": "******", "refreshToken": "******" }
响应样例
response: Status Code: 200 OK Content-Type: application/json Body: { "accessToken": "*******", "tokenType": "*******", "expiresIn": "*******", "refreshToken": "*******", "scope": "*******" }
错误码
Http状态码 |
错误码 |
错误描述 |
说明 |
---|---|---|---|
400 |
100449 |
The device is freezed cant operate. |
用户无操作权限。 处理建议:请检查appId所对应用户是否有接口调用权限。 |
400 |
102202 |
Required Parameter is null or empty. |
必选参数为空。 处理建议:请检查请求参数中的必选参数是否已填写。 |
400 |
50400 |
The input is invalid. |
输入参数无效。 处理建议:请检查接口调用请求中携带参数的合法性。 |
401 |
100208 |
AppId or secret is not right. |
appId或secret错误。 处理建议:
|
500 |
50252 |
Internal server error. |
服务器运行内部错误。 处理建议:物联网平台内部错误,请联系物联网平台维护人员处理。 |