热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

esp8266数据发送与接收httpphp

后续内容参考:php处理数据并连接数据库https:blog.csdn.netqwe24111articledetails99644132该文只介绍了php接收数据并

后续内容参考:php处理数据并连接数据库
https://blog.csdn.net/qwe24111/article/details/99644132
该文只介绍了php接收数据并连接数据库的一般相关操作,可作为后续php程序处理数据的参考

接收esp8266数据可以采用多种方法

方法一:tcp/ip协议,esp tcp客户端往服务器发送数据,服务器(接收并写入数据库,需要写一个服务器监听特定端口。服务器需要发送收集指令,8266采集数据并返回

方法二:mqtt协议(优势:物联网应用广泛),esp 往broker发送数据,服务器接收并存入数据库。其他语言写一个server(只需要接收客户端发送信息)接收数据,写入数据库。

方法三:http协议。发送数据给web服务器处理。

参考资料 nodemcu说明文档 网址
https://nodemcu.readthedocs.io/en/master/

8266采用http协议
先联网
再使用http.post()函数

//连接WIFI
wifi.setmode(wifi.STATIONAP)stationcfg={ssid="xxx";auto=true;
}
wifi.sta.config(stationcfg)
//在连接网络成功后通过http.post()函数发送信息
wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)print("\n\tSTA - GOT IP".."\n\tStation IP: "..T.IP.."\n\tSubnet mask: "..T.netmask.."\n\tGateway IP: "..T.gateway) //输出8266的IP等信息http.post('http://10.xxx.xxx.xxx/a/insert', //ip地址或网址
'Content-Type: application/json',
'{"data":"456"}',
function(code, data)if (code < 0) thenprint("HTTP request failed")elseprint(code, data) //数据发送成功则返回数据end
end)
end);

若要把变量存入body中&#xff0c;通过http.post传送出去的话&#xff0c;需要对body部分格式进行更改

indata&#61;"" --indata是string格式
-- &#39;{"data":"456"}&#39;,
&#39;{"data":"&#39;..indata..&#39;"}&#39;,

PHP接收JSON格式的数据
PHP默认识别的数据类型是application/x-www.form-urlencoded标准的数据类型。因此&#xff0c;对型如text/xml 或者 soap 或者 application/octet-stream 和application/json格式之类的内容无法解析&#xff0c;如果用$_POST数组来接收就会失败&#xff01;

此时可以使用$GLOBALS[‘HTTP_RAW_POST_DATA’] 或 file_get_contents(‘php://input’) 来获取提交的数据
对于接收到的数据&#xff0c;用json_decode() 对JSON数据进行解码&#xff0c;转换为PHP变量&#xff0c;如果要数据类型的数据要加一个参数true

public function insert(){$json&#61;(file_get_contents(&#39;php://input&#39;)); $a&#61;json_decode($json,ture);print_r($a);}

结果
在这里插入图片描述
图片中可见有返回数据&#xff0c;故发送成功

剩下的工作便是在php中
连接数据库
接收到数据后并存入数据库中即可。。


推荐阅读
author-avatar
张芬921_162
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有