龙空技术网

「教程」利用HTTP连接OneNET实现数据上报

亿佰特物联网应用 252

前言:

如今看官们对“html怎么传数据”都比较关切,同学们都想要知道一些“html怎么传数据”的相关知识。那么小编在网络上收集了一些对于“html怎么传数据””的相关文章,希望大家能喜欢,小伙伴们快快来学习一下吧!

利用串口服务器HTTP客户端模式上报或者获取云端数据,此功能基于HTTP/1.1协议实现,不能通过上次讲解天气API时使用的GET请求报文实现(基于HTTP/1.0)。

一.简介

下面通过GET方式请求百度主页说明HTTP/1.1报文的组成;

请求方式+URL+数据+HTTP/1.1+换行符+包头+换行符+换行符+换行符,可以看出GET请求HTTP数据包在URL的后面协议标识的前面,也就是从“Accept”到“sec-ch-ua-platform”都是包头数据;

包头中数据用于标识请求信息并非必须具有,比如可以使用下面这种请求方式获取百度搜索的主页:

GET: HTTP/1.1

Host:

二.操作步骤

1.即使不带任何包头数据也可以实现请求“百度”,并收到<HTML>数据返回,如图所示:

2.配置串口服务器参数,实现HTTP/1.1请求“百度”主页,如下图所示:

3.使用串口调试助手发送“/”,就可以收到HTTP服务器返回的数据,通过对HTML(超文本标记语言)解析就可以得到“百度”的主页;

4.之后请求OneNET修改数据都将基于HTTP/1.1协议实现。

三.OneNET设备注册

1.首先注册并登录OneNET账号,选择“产品服务”下的MQTT物联网套件;

2.选择“MQTT物联网套件”的老版本“多协议接入”,新版的MQTT也是原生支持HTTP/1.1协议接入,使用方法与接下来使用的“HTTP接入”相同,有兴趣可以自行阅读OneNET使用说明;

3.在“HTTP接入”产品下添加产品,参数可以随意填写不影响,建议除产品名称外其余参数和小编保持一致;

4.在“ebyte”产品目录下添加模拟电表设备“DTSU666_01”,设备编号可以使用生产编号,这里使用模拟设备因此产品编号模拟为“S20220516001”,点击“添加”;

5.进入设备详情界面查询设备ID、API地址、APIKEY,第一次添加设备不具有APIKEY需要添加,手动添加明文密钥,服务器会自动对明文进行加密,之后使用都是使用加密后的密钥;

6.在数据模板中添加“Ua”(A相相电压)、“Ia”(A相电流),如图所示:

四.OneNET资料查询

1.可以在“文档中心”()查看API接口使用说明;

2.目前NA111系列串口服务器与以太网网关仅支持POST与GET两种请求方式,而HTTP/1.1协议共支持9种请求方式(GET、HEAD、POST、PUT、DELETE、CONNECT、OPTIONS、TRACE、PATCH),其余请求方式只能在TCP客户端模式结合短连接实现,而OneNET-HTTP服务器在小编的印象中仅支持(GET、POST、PUT、DELETE)四种方式,先对“查询数据流”和“上传数据点”两个常用API接口进行说明其余API接口可以参考实现;

五.利用POST上报设备状态

1.配置串口服务器,使用动态IP、随机端口并保证设备能正常接入互联网,配置目标地址(api.heclouds.com),端口(80),建议打开包头返回方便观察服务器反馈状态,若不返回包头在包头错误,请求不合法时无法找到错误原因,返回包头则可以通过HTTP状态码判断请求状态;

分类

分类描述

1**

信息,服务器收到请求,需要请求者继续执行操作

2**

成功,操作被成功接收并处理

3**

重定向,需要进一步的操作以完成请求

4**

客户端错误,请求包含语法错误或无法完成请求

5**

服务器错误,服务器在处理请求的过程中发生了错误

2.使能短连接模式配置为5s(非必要但建议开启减轻服务器压力);

3.配置URL为/devices/ devices_id/datapoints;

配置包头为api-key:df0JBIwvwcxI15eeyXS52bArshE=\r\nHost:api.heclouds.com;

此处串口服务器在POST模式下隐含了Content-Length:包头信息,无需将此包头配置到包头数据中,上位机和网页配置的包头输入框支持换行符的识别,不能使用转义字符“\r\n”输入,点击“保存配置”,再点击“重启设备”;

4.根据手册示例组包实际请求数据并使用JSON格式化工具校验数据,如图所示:

5.通过串口助手发送上报数据,并使用平台查询上报数据是否成功:

6.演示关闭包头返回后的接收:

六.利用GET获取云端数据

1.修改设备请求方式与URL路径其余配置与POST时相同,根据请求示例进行配置如下图所示:

2.根据请求示例可以得到请求数据的组包规则为“datastream_ids=Ua,Ia”,请求效果如下:

七.利用TCP客户端实现DELETE请求

1.HTTP是超文本传输协议一般工作在TCP协议上,除了使用HTTP客户端模式还可以使用TCP客户端实现目前不支持的请求方式,比如接下来测试的删除请求,利用DELETE删除刚才测试的DTSU666_01设备;

2.登录平台查询设备,使用“DELETE”请求成功。

标签: #html怎么传数据