关于前端:DGIOT云云对接第三方平台对接dgiot基本接口介绍

21次阅读

共计 4413 个字符,预计需要花费 12 分钟才能阅读完成。

[小 迪 导读]
随着大数据技术和智能显示技术的倒退,数字可视化大屏设计曾经成为 IT 信息畛域一种广泛的数据展现利用场景。从政府的宏观政务决策,到企业的生产治理,从环保数据的实时监控,到电商平台的流量监控,都离不开数据大屏的身影。可视化数据大屏承载着各种组织对内信息共享、决策分析,对外信息颁布、行业交换、会议现场展现等重任,被越来越宽泛的利用。在数字化转型潮流中,dgiot 可能提供海量的数据采集并通过 dgiot 对立接口为第三方提供设施信息的数据生产。

1.0 获取 Token

1.1 登录接口

接口名称: 登录接口
接口地址: https://prod.dgiotcloud.cn/io…
申请办法: POST

申请参数

参数 参数名称 类型 参数阐明 是否必填项
username 用户名 String 零碎账户
password 明码 String 零碎账户明码
Json 示例:{“password”: “dgiot\_admin”,”username”: “dgiot\_admin”}

返回参数

参数 参数名称 类型 参数阐明 是否必填项
username 用户名 String 零碎账户
sessionToken 会话标识 String 零碎申请惟一验证

Json 示例:{“sessionToken”: “r:b2567201abe12b1581ebf5dd16839edd”,”username”: “dgiot\_admin”}

1.2 获取 token

接口名称: 取得 Token
接口地址: https://prod.dgiotcloud.cn/io…
申请办法: POST

申请参数

参数 参数名称 类型 参数阐明 是否必填项
appid 利用名称 String 在 SDK 调用过程中惟一的一个利用标识
secret 利用密钥 String 调用 API 时的 Token, 用来验证申请合法性, 请留神窃密

返回参数

参数 参数名称 类型 参数阐明 是否必填项
name 用户名 String 零碎账户
access\_token 会话标识 String 零碎申请惟一验证
expires\_in Token 过期工夫 Int Token 过期工夫单位: 秒
desc 形容 String 形容

2.0 查问 Device parse 数据

简要形容:

  • 获取以后设施 parse 数据

申请 URL:

  • https://prod.dgiotcloud.cn/iotapi/classes/Device

申请形式:

  • GET

参数:

参数名 必选 类型 阐明
order string 排序形式, 负为降序, eg: score,-name
limit integer limit, 显示多少条记录,显示 100 条记录 eg:100
skip integer skip, 从第几条记录开始
keys string 须要显示的字段, 加 count(*) 则后果外面会显示总记录数, last_row 为获取最初一条记录, eg: devaddr,status
include string include
where integer 过滤条件,eg: {“devaddr”:{“$in”:[“842500EE”]}}
curl -X GET "https://prod.dgiotcloud.cn/iotapi/classes/Device?order=createdAt&limit=10&skip=0&keys=devaddr%2Cstatus&where=%7B%22devaddr%22%3A%7B%22%24in%22%3A%5B%22842500EE%22%5D%7D%7D" -H "accept: application/json" -H "authorization: Basic bGl1c2hvdXhpbjpsaXVzaG91eGlu"

返回示例

  {
    "results": [
      {
        "devaddr": "842500EE",
        "status": "ONLINE",
        "objectId": "7f484ee521",
        "createdAt": "2021-04-18T11:06:53.878Z",
        "updatedAt": "2021-04-19T05:43:14.419Z",
        "ACL": {
          "role:admin": {
            "read": true,
            "write": true
          }
        }
      }
    ]
  }

返回参数阐明

备注

  • 更多返回错误代码请看首页的错误代码形容

3.0 查问单个 Device 时序数据

简要形容:

  • 获取以后设施时序数据

申请 URL:

  • https://prod.dgiotcloud.cn/iotapi/device

申请形式:

  • GET

参数:

参数名 必选 类型 阐明
deviceid string 设施 ID
order string 排序形式, 负为降序, eg: score,-name
limit integer limit, 显示多少条记录,显示 100 条记录 eg:100
skip integer skip, 从第几条记录开始
keys string 须要显示的字段, 加 count(*) 则后果外面会显示总记录数, last_row 为获取最初一条记录, eg: username,email
where integer 过滤条件,eg: {“createdat”: {“$gte”:”now – 10d”}}
curl -X GET "https://prod.dgiotcloud.cn/iotapi/device/69c7f9e376?order=createdAt&limit=10&skip=10&where=%7B%22createdat%22%3A%20%7B%22%24gte%22%3A%22now%20-%2010d%22%7D%7D" -H "accept: application/json" -H "authorization: Basic YWRtaW46c3dTV2lvdG4ybi5jb20="

返回示例

  {
    "results": [
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:02.577"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:12.582"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:22.512"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:32.451"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:42.515"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:27:52.389"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:28:02.390"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:28:12.454"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:28:22.360"
      },
      {
        "activetotalenergy": 0,
        "createdat": "2021-04-14 03:28:32.279"
      }
    ]
  }

返回参数阐明

备注

  • 更多返回错误代码请看首页的错误代码形容

RESTful 接口应用帮忙

反复登录问题解决方案:

curl 是罕用的命令行工具,用来申请 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。

它的性能十分弱小,命令行参数多达几十种。其中 -u 参数能够用来设置服务器认证的用户名和明码。

  • $ curl -u 'demo:123456'

下面命令设置用户名为 demo,明码为 123456。

以上文 curl 为例:

 原:curl -X GET "https://prod.dgiotcloud.cn/iotapi/device/a47072cd8b?order=createdAt&limit=10&skip=10&where=%7B%22createdat%22%3A%20%7B%22%24gte%22%3A%22now%20-%2010d%22%7D%7D" -H "accept: application/json" 
现:curl -u 'demo:123456' -X GET "https://prod.dgiotcloud.cn/iotapi/device/a47072cd8b?order=createdAt&limit=10&skip=10&where=%7B%22createdat%22%3A%20%7B%22%24gte%22%3A%22now%20-%2010d%22%7D%7D" -H "accept: application/json" 

TDengine 反对 SQL 语句:

为反对各种不同类型平台的开发,TDengine 提供合乎 REST 设计标准的 API,即 RESTful API。为最大水平升高学习老本,不同于其余数据库 RESTful API 的设计办法,TDengine 间接通过 HTTP POST 申请 BODY 中蕴含的 SQL 语句来操作数据库,仅须要一个 URL。

http://<ip>:<PORT>/rest/sql

curl 语法如下:

curl -u username:password -d '<SQL>' <ip>:<PORT>/rest/sql

留神:SQL 语句中的数据表应提供数据库前缀

上面以查问最近十条记录为例

curl -H "accept: application/json" -u root:taosdata -d 'SELECT createdat FROM _3ea14b556a._d46d4340d9   order by createdat desc limit 10' http://prod.dgiotcloud.cn:6041/rest/sql

返回示例

  {
      "status":"succ",
      "head":["createdat"],
      "data":[
          ["2021-04-20 03:09:42.737"],
          ["2021-04-20 03:09:17.726"],
          ["2021-04-20 03:08:51.004"],
          ["2021-04-20 03:08:14.428"],
          ["2021-04-20 03:07:48.258"],
          ["2021-04-20 03:07:13.028"],
          ["2021-04-20 03:06:47.026"],
          ["2021-04-20 03:06:20.609"],
          ["2021-04-20 03:05:44.695"],
          ["2021-04-20 03:05:18.560"]
      ],
      "rows":10
  }

[小 迪 点评]

  • dgiot 反对对接第三方平台,为数字可视化大屏等第三方利用提供无力的数据保障。

想理解更多 dgiot 的具体细节,欢送大家在 GitHub 上查看相干源代码。

正文完
 0