菜单
HTTP数据接口 > API Reference > 实时数据PULL
实时数据PULL 最近更新时间:2022-08-29 16:14:14

# 接口描述

本接口为实时数据拉取(PULL)接口。
通过调用本接口可以获取设备最新数据。
接口返回的是请求时间点往前30分钟内设备上传的最新,并且最多 点位数量*100 条未推送过的数据。
此接口返回数据和用户名相关,请相同用户名不要多地调用
数据存储建议:请将数据按placeId为存储依据,点位与设备是绑定关系

# 接口调用

  •       GET /api/data/realtime HTTP/1.1
    Host: dev.thuwater.com
    X-TH-TOKEN: 26b0e5bfcbc.214ce96c1f7c9f0a33549b81087579b38b6a8.e9ba17523a25d766
    
  •       /api/data/realtime:
        get:
          tags:
            - 实时数据同步
          summary: 实时数据同步接口 拉取(pull)模式
          description: 请求时间点往前30分钟内设备上传的最新,并且最多点位数*100条未推送过的数据。此接口返回数据和用户名相关,请相同用户名不要多地调用数存储建议:请将数据按placeId为存储依据,点位与设备是绑定关系
          parameters:
            - name: X-TH-TOKEN
              in: header
              description: 通过登陆接口获取的token
              required: true
              schema:
                type: string
  •       var request = require("request");
    
    var options = {
      method: 'GET',
      url: 'https://dev.thuwater.com/api/data/realtime',
      headers: {
        'Host': 'dev.thuwater.com',
        'X-TH-TOKEN': '26b0e5bfcbc.214ce96c1f7c9f0a33549b81087579b38b6a8.e9ba17523a25d766'
      }
    };
    
    request(options, function (error, response, body) {
      if (error) throw new Error(error);
      console.log(body);
    });
  •       OkHttpClient client = new OkHttpClient();
    
    Request request = new Request.Builder()
      .url("https://dev.thuwater.com/api/data/realtime")
      .get()
      .addHeader("X-TH-TOKEN", "26b0e5bfcbc.214ce96c1f7c9f0a33549b81087579b38b6a8.e9ba17523a25d766")
      .addHeader("Host", "dev.thuwater.com")
      .build();
    
    Response response = client.newCall(request).execute();

# 调用参数

参数名称必填说明
X-TH-TOKEN通过登陆接口获取的token

# 接口响应

  •       HTTP/1.1 200 OK
    Content-Type: application/json
    
    [
      {
        "placeId" : "1111", // placeId 安装点ID
        "equipId" : "xxxx", // equipId 设备ID
        "equipType": "xxxx", // 安装设备类别
        "resend" : false, // 是否是设备重发的历史数据
        "sampletime" : "2019-01-01 01:01:01",  // 监测时间
        "c3" : "4.123",  // 参考 设备数据说明接口
        "c4" : "4.123",  // 参考 设备数据说明接口
        "c5" : "4.123",  // 参考 设备数据说明接口
        ...
      },{
        .....
      },
      ......
    ]

# 响应参数

参数名称说明
httpcode200-正常,401-无权限,500-其他错误。
placeId安装点ID
equipId设备ID
equipType设备类型编码
resend是否是设备重发的历史数据
sampletime监测时间
c3/c4/c5...参考 设备数据说明

当无数据的时候返回:[ ]

接口返回的是请求设备上传的最新,并且最多 点位数量*100 条未推送过的数据。

  1. 已经获取的数据不会再次获取。
  2. 返回数据中的字段不一定每个都有,当没有数据的时候字段不存在,例如某条数据包含c3/c4,而另外某条数据包含c7/c8
  3. 设备最新上传的数据不一定是最新测量的数据,这种数据通过 resend=true 标识。

当设备因为各种原因无法及时将数据上传到服务器时(信号不好,服务器问题等),设备将会在数据链路正常的时候再次上传,这种数据会被标识为resend=true

当返回为空的时候说明已经没有最新数据等待同步,建议等待5分钟后再请求
当返回数据少于100条的时候,建议等待1分钟后再请求
当返回数据大于100条的时候,建议不等待直接继续请求最新数据
数据存储建议:请将数据按placeId为存储依据,点位与设备是绑定关系