ESP8266透传:发送数据到HTTP服务器

简介: ESP8266透传:发送数据到HTTP服务器

   在进行HTTP测试中,SoapUI是很好的第三方工具。

   SoapUI是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。SoapUI Pro是SoapUI的商业非开源版本,实现的功能较开源的SoapUI更多。

   现在我们就利用SoapUI来模拟制作的一个HTTP服务器,制作的流程可以参考:https://blog.csdn.net/russ44/article/details/51680083

   接下来我们开始来用串口终端配置一下ESP8266联网以及设置透传功能,然后发送数据:

   

ESP8266进入透传的配置:(以串口115200波特率为例)


(1)设置WIFI模式

AT+CWMODE=3                          //设置为ap+sta共存

640.png

响应OK

(2)重启

640.png

AT+RST

重启后我们看到,这里出现乱码,乱码的原因是因为模块刚上电的时候,波特率并不是我们所设置的115200,而是会稍微偏大一点,导致串口显示出现乱码。

(3)连接路由器

AT+CWJAP="ssid","password"    //传入路由的ssid和password

640.png

响应OK

(4)查询设备IP

AT+CIFSR

640.png

响应设备的ip地址以及其它

(5)连接服务器(TCP)

AT+CIPSTART="TCP","server ip",server port     //传入远端服务器的ip以及端口号

640.png

响应:OK

(6)开启ESP8266的透传模式

AT+CIPMODE=1

640.png

响应OK

(7)开始透传

AT+CIPSEND

640.png

响应: >              //从此时开始,串口输入的字符会透传到服务器端

将数据通过HTTP发送到远端服务器:

POST /test/upload/messages HTTP/1.1
Host: 192.168.12.68:8999
Content-Type: application/json
Content-Length:17
cache-control: no-cache
{"text1" : "123"}

其中/test/upload/messages为URL的一部分

Host字段添加服务器IP和端口号,这里的服务器IP是192.168.12.68,端口号是8999

所以URL为:http://192.168.12.68:8999/test/upload/messages

Content-Type字段代表当前要使用数据的格式,这里使用的是application/json

Content-Length字段代表当前json数据的长度,也就是后面{"text1","123"}这串数据的长度。通过下面这个工具可知

当前的数据长度为17:

640.jpg

接下来是一个空格,这个空格一定要有,否则HTTP服务器会解析出错

640.png    

   后面的{"text1":"123"}就是我们要发送的json数据。接下来通过串口调试助手将带http协议的json数据发到http测试服务器:

640.jpg

可以看到,HTTP服务器回复了200 OK,代表ESP8266的数据已经成功透传到服务器。

优质嵌入式学习干货推荐:包括ARM逻辑、Linux设备驱动程序、Linux应用程序开发、Android系统学习等。

目录
相关文章
|
12天前
|
缓存 负载均衡 监控
HTTP代理服务器在网络安全中的重要性
随着科技和互联网的发展,HTTP代理IP中的代理服务器在企业业务中扮演重要角色。其主要作用包括:保护用户信息、访问控制、缓存内容、负载均衡、日志记录和协议转换,从而在网络管理、性能优化和安全性方面发挥关键作用。
40 2
|
2月前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
53 3
|
2月前
|
消息中间件 测试技术
通过轻量消息队列(原MNS)主题HTTP订阅+ARMS实现自定义数据多渠道告警
轻量消息队列(原MNS)以其简单队列模型、轻量化协议及按量后付费模式,成为阿里云产品间消息传输首选。本文通过创建主题、订阅、配置告警集成等步骤,展示了该产品在实际应用中的部分功能,确保消息的可靠传输。
49 2
|
2月前
|
存储 运维 算法
服务器数据恢复—raid6阵列硬盘重组raid5阵列如何恢复raid6阵列数据?
服务器存储数据恢复环境: 存储中有一组由12块硬盘组建的RAID6阵列,上层linux操作系统+EXT3文件系统,该存储划分3个LUN。 服务器存储故障&分析: 存储中RAID6阵列不可用。为了抢救数据,运维人员使用原始RAID中的部分硬盘重新组建RAID并进行了初始化。 初始化开始一段时间后,运维人员察觉到情况有异后强制终止初始化,这个时候初始化已经完成一半以上。数据部分已被不可逆的破坏。
|
2月前
|
搜索推荐 安全 网络安全
服务器支持HTTPS的时机和条件
【10月更文挑战第23天】服务器支持HTTPS的时机和条件
31 5
|
3月前
使用Netty实现文件传输的HTTP服务器和客户端
本文通过详细的代码示例,展示了如何使用Netty框架实现一个文件传输的HTTP服务器和客户端,包括服务端的文件处理和客户端的文件请求与接收。
86 1
使用Netty实现文件传输的HTTP服务器和客户端
|
3月前
|
存储 数据挖掘
服务器数据恢复—用RAID5阵列中部分盘重建RAID5如何恢复原raid5阵列数据?
服务器数据恢复环境: 一台服务器挂接一台存储,该存储中有一组由5块硬盘组建的RAID5阵列。 服务器故障: 存储raid5阵列中有一块硬盘掉线。由于RAID5的特性,阵列并没有出现问题。工作一段时间后,服务器出现故障,用户方请人维修。维修人员在没有了解故障磁盘阵列环境的情况下,用另外4块硬盘(除去掉线的硬盘)重新创建了一组全新的RAID5阵列并完成数据同步,导致原raid5阵列数据全部丢失。
|
3月前
|
Python
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
这篇博客文章是关于如何使用Flask框架上传特征值数据到服务器端,并将其保存为txt文件的教程。
37 0
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
|
2月前
|
存储 Oracle 关系型数据库
oracle服务器存储过程中调用http
通过配置权限、创建和调用存储过程,您可以在Oracle数据库中使用UTL_HTTP包发起HTTP请求。这使得Oracle存储过程可以与外部HTTP服务进行交互,从而实现更复杂的数据处理和集成。在实际应用中,根据具体需求调整请求类型和错误处理逻辑,以确保系统的稳定性和可靠性。
75 0
|
3月前
|
SQL 分布式计算 关系型数据库
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
105 3