有方N58 HTTP POST 请求连接 TDengine

串口调试软件:格西调试精灵

第一步先注册网络获取IP地址

建立PPP连接 AT+XIIC=1\r

PPP链路建立成功,查询IP地址 AT+XIIC?\r

设置网络APN AT+CREG?\r

运行结果,红线处是获取到的IP地址

BSP及AT指令手册

链接:https://pan.baidu.com/s/1rI3U73Co6MNveM-Kc9JhuQ

提取码:uawr

第二步设置HTTP指令

TDengine REST API

相关AT指令

|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| HTTP 参数设置 | AT+HTTPPARA=url,www.armxu.cn/rest/sql\r |
| | AT+HTTPPARA=port,6041\r |
| 链路连接 | AT+HTTPSETUP\r |
| HTTP 发送请求 | AT+HTTPACTION=99,147,1\r |
| POS主体 | POST /rest/sql HTTP/1.1\r\nHost:www.armxu.cn\r\nContent-Type:text/plain\r\nContent-Length:15\r\nAuthorization:Basic cm9vdDp0YW9zZGF0YQ==\r\n\r\nshow databases; |
| HTTP 链路主动关闭 | AT+HTTPCLOSE\r |

这里的难点是POST主体的构建,根据HTTP协议,如下图:

用Ndd构建了一个POST自定义报文

POST /rest/sql HTTP/1.1

Host:www.armxu.cn

Content-Type:text/plain

Content-Length:15

Authorization:Basic cm9vdDp0YW9zZGF0YQ==

show databases;

用Ndd的字数统计功能

文本字符数量是135,换行和回车共计6处合计6*2=12字符,总计135+12=147个字符

所以发送请求 AT+HTTPACTION=99,147,1\r

99 代表用户自定义报文模式

147 是POST内容的长度,此长度必须准确无误,否者服务器无法正常响应

Content-Length:15 指的是请求数据的长度,如图:

完整AT指令

运行结果:

红线处是服务器响应的信息。与POSTMAN 获取的信息完全一致。

相关推荐
TDengine (老段)2 天前
TDengine 第三方工具 — Telegraf、Kafka Connect、Flink、Spark
大数据·数据库·物联网·flink·kafka·时序数据库·tdengine
涛思数据(TDengine)3 天前
从设备物联到预测托管,华渚物联用 TDengine 构建 UPS 全生命周期管理数据底座
大数据·数据库·人工智能·时序数据库·tdengine·国产数据库
MC皮蛋侠客4 天前
TDengine C++ 系列(11):性能模型与调优——从测量到优化
c++·php·tdengine
TDengine (老段)4 天前
TDengine taosX 与 Explorer — 数据集成与可视化管理
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
MC皮蛋侠客5 天前
TDengine C++ 系列(6):高性能写入——参数绑定、批量与 Schemaless
c++·php·tdengine
TDengine (老段)5 天前
TDengine taosAdapter — 多协议网关详解
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
MC皮蛋侠客5 天前
TDengine C++ 系列(4):时序查询——窗口聚合、插值、连接与时序函数
大数据·c++·tdengine
MC皮蛋侠客5 天前
TDengine C++ 系列(1):全景与最小闭环——从时序数据到第一个 C++ 读写
大数据·c++·tdengine
MC皮蛋侠客5 天前
TDengine C++ 系列(5):C/C++ 连接器——连接管理与查询 API
c语言·c++·tdengine
MC皮蛋侠客5 天前
TDengine C++ 系列(8):流式计算与最新值缓存——库内实时处理
c++·缓存·tdengine