微信小程序连接服务器展示MQTT数据信息的实现


Posted in Javascript onJuly 14, 2020

一、 实现工具——微信开发者工具

为何使用微信小程序作为展示?
(1)范围广且能跨平台访问;
(2)小而快能够快速的访问;

二、 实现步骤

1、总体大概:

(1)界面设计:数据直观展示+历史数据+物联网调试信息
(2)连接服务器与回调
利用wx.request(Object object)发起 HTTPS 网络请求。

参数:

  • url:开发者服务器接口地址;
  • data:请求的参数;
  • header:设置请求的 header,header 中不能设置 Referer。

微信小程序连接服务器展示MQTT数据信息的实现

成功连接将会调用success: function (res) {}函数,我们可以利用console.log(res.data)打印出服务器传来的数据Var一个that新的this变量将我们传来的数据以列表保存。

微信小程序连接服务器展示MQTT数据信息的实现

服务器连接失败会调用fail: function (err)函数,并通过{console.log(err)}打印出错误信息。

2、细节展示

A、数据展示界面

微信小程序连接服务器展示MQTT数据信息的实现

状态:

微信小程序连接服务器展示MQTT数据信息的实现

此处利用条件渲染绑定服务器传来的开关值,利用图片直观展示开关情况。

温湿度:

微信小程序连接服务器展示MQTT数据信息的实现

微信小程序连接服务器展示MQTT数据信息的实现

温度和湿度通过对列表遍历得到最新的值显示在自己设置的view。

B、历史记录展示界面

微信小程序连接服务器展示MQTT数据信息的实现

利用循环渲染将每次获取到的列表展示。同时调用服务器接受传来的时间准确直观展示每一次的历史数据。

C、物联网调试信息界面

我们如果使用lot调试设备将会在此界面展示调试信息:

微信小程序连接服务器展示MQTT数据信息的实现

步骤:

a、创建物联网平台

选择物联网平台

点击设备管理,选择产品,创建产品

给产品命名

在标准品类,选择智能生活,选择灯;节点类型选择直连设备 ;连网方式选择WIFI;数据格式选择ICA标准数据类型;保存

然后在产品下创建一个设备微信端;点击设备;添加设备;产品选择刚建立的产品;再给设备命名;点击确认

b、代码替换三元组与订阅发布主题

微信小程序连接服务器展示MQTT数据信息的实现

c、检验连接是否成功

回调成功以弹窗方式展示:

微信小程序连接服务器展示MQTT数据信息的实现

当服务器连接异常进行错误函数回调并打印错误信息:

微信小程序连接服务器展示MQTT数据信息的实现

(关于更多lotl连接请点击我参考的大佬博客:只要会用电脑就能看懂的物联网教程(阿里云+esp8266+微信小程序)

3 出现错误及改正

A.自定义订阅主题不被识别
解决方法:点击规则引擎的云产品流传发现创建规则数据格式选择二进制格式,改为JSON格式解决
B.控制台打印错误:Please do not call Page constructor in files that not listed in"pages" sect
解决方法:用来测试的界面app.js文件不能加Page({}) 会有引用错误。加上即解决。
C.小程序无法从服务器拿到最新的测试数据
解决方法:服务器创建新API,更改sql语句

select * from mqtt where id = (select max(id) from mqtt);

拿到最新数据渲染在自己设计的View中。

到此这篇关于微信小程序连接服务器展示MQTT数据信息的实现的文章就介绍到这了,更多相关小程序连接服务器展示MQTT内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Js 订制自己的AlertBox(信息提示框)
Jan 09 Javascript
Jquery 1.42 checkbox 全选和反选代码
Mar 27 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
Feb 24 Javascript
JavaScript注册时密码强度校验代码
Jun 30 Javascript
微信小程序实现团购或秒杀批量倒计时
Nov 01 Javascript
mpvue写一个CPASS小程序的示例
Sep 04 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
Aug 12 Javascript
vue父子模板传值问题解决方法案例分析
Feb 26 Javascript
js最全的数组的降维5种办法(小结)
Apr 28 Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
Aug 03 Javascript
vue v-on:click传递动态参数的步骤
Sep 11 Javascript
详解javascript void(0)
Jul 13 #Javascript
Vue组件间数据传递的方式(3种)
Jul 13 #Javascript
vue-cli4项目开启eslint保存时自动格式问题
Jul 13 #Javascript
详解Vue+elementUI build打包部署后字体图标丢失问题
Jul 13 #Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
Jul 13 #Javascript
Vue3新特性之在Composition API中使用CSS Modules
Jul 13 #Javascript
Threejs实现滴滴官网首页地球动画功能
Jul 13 #Javascript
You might like
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
php根据生日计算年龄的方法
2015/07/13 PHP
PHP实现QQ登录的开原理和实现过程
2018/02/04 PHP
在PHP中实现使用Guzzle执行POST和GET请求
2019/10/15 PHP
js定时器(执行一次、重复执行)
2014/03/07 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
javascript实现添加附件功能的方法
2015/11/18 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
jquery中键盘事件小结
2016/02/24 Javascript
浅谈移动端之js touch事件 手势滑动事件
2016/11/07 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
2017/01/19 Javascript
Bootstrap标签页(Tab)插件使用方法
2017/03/21 Javascript
前端自动化开发之Node.js的环境搭建教程
2017/04/01 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
微信小程序中吸底按钮适配iPhone X方案
2017/11/29 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
微信小程序中添加客服按钮contact-button功能
2018/04/27 Javascript
Vue CLI 3搭建vue+vuex最全分析(推荐)
2018/09/27 Javascript
jQuery实现轮播图源码
2019/10/23 jQuery
vue-cli脚手架的.babelrc文件用法说明
2020/09/11 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
[01:25]DOTA2自定义游戏灵园鬼域等你踏足
2015/10/30 DOTA
在Django的视图(View)外使用Session的方法
2015/07/23 Python
Python3 中文文件读写方法
2018/01/23 Python
Python实现图片尺寸缩放脚本
2018/03/10 Python
Flask框架单例模式实现方法详解
2019/07/31 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
英国著名书店:Foyles
2018/12/01 全球购物
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
高一家长会邀请函
2014/01/12 职场文书
搞笑获奖感言
2014/01/30 职场文书
中国梦宣传标语口号
2015/12/26 职场文书
2016领导干部廉洁自律心得体会
2016/01/13 职场文书
Redis 持久化 RDB 与 AOF的执行过程
2021/11/07 Redis
python多线程方法详解
2022/01/18 Python
Python学习之包与模块详解
2022/03/19 Python