序号 | 其它NodeMCU LUA开发文档 |
---|---|
① | NodeMCU/ESP8266 DHT11使用 |
② | NodeMCU/ESP8266 HTTP POST数据至中国移动OneNET |
③ | NodeMCU/ESP8266 MQTT接入中国移动OneNET |
④ | NodeMCU/ESP8266 远程升级(OTA) |
⑤ | 微信小程序获取中移OneNET数据 |
⑥ | NodeMCU/ESP8266 NodeMCU连接阿里云 |
全套视频教程:Lua保姆级开发教程
此教程主要讲解微信小程序获取中移OneNET数据。
本教程不会过多讲解中国移动OneNET及小程序的使用。
有关中国移动OneNET的介绍请移步至此。
使用协议:HTTP
1.协议介绍
http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使得开发和部署是那么的直截了当。[以上出自百度百科]
HTTP的一次访问可以分为四个部分:
①:请求行
②:请求头
③:空一行
④:请求体
更多细节大家慢慢了解,最好买书看。
像我们平时在浏览网页的时候,可以经常看到http或https的身影,一般后者居多,比如https://www.baidu.com,当然,直接输www.baidu.com也可以,但是最终也是以https访问,多了个s就代表访问时会进行加密,保证了安全性。
2.先使用Postman来试试
①:先看看某个产品中的某个设备的三元组:
获取API-key
获取设备ID
获取鉴权信息
②:在我这个设备里面已经有数据流了,是我之前上传的,现在就用Postman来获取看看:
配置好信息后,点击Send
http://api.heclouds.com/devices/586718834/datapoints?type=3
可以看到返回的数据就是刚刚在OneNET上看到的数据
3.小程序
这里只贴js代码,其实都对于应用的我们来说,本质没什么区别,只是换了个软件,改改就行。想要完整小程序代码的同学,文章末尾加群,群文件里资源多多。
init: function () {
var that = this
wx.request({
url: "https://api.heclouds.com/devices/586718834/datapoints",
//将请求行中的数字换成自己的设备ID
header: {
"api-key": "ctk3FcLj1rYpRyFD77NvCbmgytc="
//换成自己的api-key
},
data: {
limit: 1
},
method: "GET",
success: function (e) {
console.log(e.data.data)
//此处打印GET回来的json数据
that.setData({
temperature: e.data.data.datastreams[0].datapoints[0].value,
humidity : e.data.data.datastreams[1].datapoints[0].value,
})
}
});
}
再把数据显示出来即可:
4.总结
若发现错误,请及时告知,十分感谢!!
主要是使用HTTP协议远程访问服务器,三元组一定要填写正确(设备ID,鉴权信息,api-key)。
Q交流群:612683349
进群之后大家可以有啥说啥,随意水群,平时没事进来打打架,聊聊人生
^ _ ^。