强力讲解如何用ESP8266 通过HTTP 协议与OneNET 信息交互

在我的强力讲解如何将ESP8266 接入中移OneNET 平台中,我向大家讲解了如何用ESP8266 接入中移OneNET 平台,并通过HTTP 协议获取数据流。

但是我们知道OneNET 平台是不能通过HTTP 进行命令下发的,这和MQTT、EDP 协议等不同,但这是不是说明我们就不能通过用户端对硬件进行控制了呢?答案是否。

我们在向OneNET 发送数据使用的是HTTP 的POST 请求方式,但是HTTP 除了POST 请求外,还有很多其他的请求类型(具体大家可自行查阅)。其中就还包括了GET 请求,顾名思义,POST 请求是用来发送数据的,那GET 请求当然就是用来请求获取数据的。

对于POST 和GET 的简要说明如下:

请求类型 说明
POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
GET 请求指定的页面信息,并返回实体主体。

由此可以看出,我们虽然不能主动通过App 向硬件下发命令,但是我们可以通过GET 请求让硬件主动向App 索取命令


划重点

这是向设备索取command 数据流的值

GET /devices/xxxxxx666/datastreams/command HTTP/1.1
api-key: xxxxxxxxxxxxxxxxx5NYbHPuCoo=
Host:api.heclouds.com
Connection:close                                      /* 此句可省,省去即默认keep-alive 连接模式 */
                                                      /* 严重提醒,这里必须带上两个换行 */

结果:
强力讲解如何用ESP8266 通过HTTP 协议与OneNET 信息交互_第1张图片

这是向设备索取全部数据流的值

GET /devices/xxxxxx666/datapoints HTTP/1.1
api-key: xxxxxxxxxxxxxxxxx5NYbHPuCoo=
Host:api.heclouds.com
Connection:close                                      /* 此句可省,省去即默认keep-alive 连接模式 */
                                                      /* 严重提醒,这里必须带上两个换行 */

结果:
强力讲解如何用ESP8266 通过HTTP 协议与OneNET 信息交互_第2张图片


App 可使用旋钮或者开关链接数据流达到控制命令值作用

你可能感兴趣的:(OneNET)