配置数据推送

物联网平台支持以项目的维度,将一个项目中的所有传感器数据向应用服务器进行推送,本节将演示如何配置HTTP接口推送;

当接收推送数据时需要在5秒内返回应答报文,否则认为失败,当1分钟内出现5次推送失败时会开启熔断,开启熔断后将关闭推送,5分钟后将再次推送;

操作步骤

  1. 在准备的具备公网IP的服务器上部署一套http接收服务,具体接口协议请查看接口文档->HTTP接口,在本样例中,使用python编写了一个简易的http服务,python版本为2.7.5
http_server.py

from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
import json

data = {'cosde':0,"msg":""}
host = ('0.0.0.0', 8888)

class Resquest(BaseHTTPRequestHandler):
    def do_POST(self):
        content_length = int(self.headers['Content-Length'])
        post_data = self.rfile.read(content_length)
        print("receive data...")
        print(post_data.decode('utf-8'))

        self.send_response(200)
        self.send_header('Content-type', 'application/json')
        self.end_headers()
        self.wfile.write(json.dumps(data).encode())

if __name__ == '__main__':
    server = HTTPServer(host, Resquest)
    print("Starting server, listen at: %s:%s" % host)
    server.serve_forever()

示例二:使用java的spring mvc

@RestController
@RequestMapping("/datapush")
public class DatapushController {

  @RequestMapping
  public Map<String, Object> receive(@RequestBody Map<String, Object> data) {
    System.out.println(data);
    Map<String, Object> result = new HashMap<>();
    result.put("success", true);
    return result;
  }

}
  1. 在我的设备中点击数据推送以及数据推送配置
  2. 点击新增按钮,并配置数据推送信息
    1. 项目名称:进行数据推送的项目名称,目前数据推送以按项目维度进行,一个项目可以有多个推送配置,同时进行数据推送,演示中填写测试项目1
    2. 推送协议物联网平台月应用服务器之间的接口协议,可选HTTP和MQTT两种方式,演示中使用HTTP方式
    3. 推送地址物联网平台对接的应用服务器地址,填写http接收服务的URL
    4. 点击确认按钮

HTTP推送使用的method为post,Content-Type为application/json

results matching ""

    No results matching ""