更新时间:2022-02-24 GMT+08:00

鉴权

典型场景

应用服务器首次访问物联网平台的开放API时,需调用此接口完成接入认证;应用服务器在物联网平台的认证过期后,需调用此接口重新进行认证,才能继续访问物联网平台的开放API。

接口功能

支持应用服务器在首次访问物联网平台的开放API之前,完成在物联网平台的接入认证。

注意事项

鉴权接口是调用其他API的前提,除了调用鉴权接口(Auth),其他接口调用都需要在request header中携带参数app_key和Authorization。app_key取值与请求参数中appId相同,Authorization的格式为Authorization: Bearer {accessToken},其中accessToken通过调用Auth接口获取到的。

如果多次获取accessToken,则之前的accessToken失效,最后一次获取的accessToken才有效。请勿并发获取accessToken。

接口原型

请求方法

POST

请求地址

https://server:port/iocm/app/sec/v1.1.0/login

传输协议

HTTPS

请求参数

参数

必选/可选

类型

位置

描述

appId

必选

String(256)

body

访问物联网平台的应用ID,在物联网平台创建应用时由平台分配获得。

secret

必选

String(256)

body

访问物联网平台的应用密钥,与appId对应,在物联网平台创建应用时由平台分配获得。

响应参数

Status Code: 200 OK

参数

类型

描述

scope

String(256)

申请权限范围,即accessToken所能访问物联网平台资源的范围,参数值固定为default。

tokenType

String(256)

accessToken的类型,参数值固定为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/login
Content-Type: application/x-www-form-urlencoded

appId=******&secret=******

响应示例

response:
Status Code: 200 OK
Content-Type: application/json
Body:
{
  "scope": "default",
  "tokenType": "Bearer ",
  "expiresIn": "*******",
  "accessToken": "*******",
  "refreshToken": "*******"
}

错误码

Http状态码

错误码

错误描述

说明

400

100449

The device is freezed cant operate.

用户无操作权限。

处理建议:请检查appId所对应用户是否有接口调用权限。

400

102202

Required Parameter is null or empty.

必选参数为空。

处理建议:请检查请求参数中的必选参数是否已填写。

401

100208

AppId or secret is not right.

appId或secret错误。

处理建议:

  • 请检查appId和secret是否有误,是否新增字符或缺少字符。
  • 请检查请求路径中的IP地址是否有误。

500

50252

Internal server error.

服务器运行内部错误。

处理建议:物联网平台内部错误,请联系物联网平台维护人员处理。