http GET/POST获取、改变云端数据,实现远程控制
使用模块为ESP-01
查询相应的版本信息的AT指令为:AT+GMR
AT version:1.2.0.0
SDK version:1.5.4.1
远程控制:不能少了硬件模块、服务器、手机APP以及Web网页。
对于当前自身的技术水平,想要徒手搭建服务器感觉是有点困难,但是呢?毕
竟有了云的存在,使得这一切的实现似乎也不是特别难了!
这里推荐几个听闻的NB云平台:Yeelink、乐联网、OneNET以及机智云
--------------------------------------------------------------------------------------------------------------------------
Step 1:Yeelink平台注册自己的传感器设备
网站账号的注册指南可参考官方链接:/developer/doc/11
增加新设备
增加传感器
这样方可视为成功!(添加的每个传感器都会有个ID号码,有了它,你就可以通过网络获取它的云端状态了!)
在我的账户设置中,找到你的API KEY
上面所提到的API KEY 以及设备编号,传感器编号下面都要用到!!!
--------------------------------------------------------------------------------------------------------------------------
Step 2: 模块配置及获取改变云端按钮状态
I、先来演示一下GET网页数据(get到按钮的状态)
特别注意下面的指令不要有多余空格,不然会报错
下面这个就是因为多加空格的错误
AT+CWMODE=1 //设置成STA模式 AT+RSTAT+CIPMUX=0 //设置单连接AT+CWJAP="XXX","XXX" //WIFI登录AT+CIPSTART="TCP","",80 //TCP连接AT+CIPMODE=1 //设置透传模式AT+CIPSEND//发送请求//发送请求之后,便会回显'>',发送网页代码。//当你想发多个的时候,无需再进行上面的配置,可以直接发//网页代码格式:GET /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1Host: Accept: */*U-ApiKey: 你的API KEYContent-Length: 0Connection: close//此处需要发送空行即“\r\n”
最后的GET请求以文本方式发送
也务必加一个空行,最后否则会出错
按键开的状态vaule
按键关的状态对应的vaule
II、再来演示一下POST网页数据(请求改变网页数据以及状态)
前提AT得配置好,和GET的一样!
改变按钮状态POST /v1.0/device/你的设备ID/sensor/你的传感器ID/datapoints HTTP/1.1Host: Accept: */*U-ApiKey: 你的API KEYContent-Length: 11 //发送数据长度11{"value":1} Content-Type: application/x-www-form-urlencodedConnection: close//必须发送空行{"value":×} //×为1打开,0关闭 发送完代码后,刷新网页即可看到按钮状态已经改变。
改变状态为1
--------------------------------------------------------------------------------------------------------------------------