微信小程序连接服务器展示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 相关文章推荐
javascript 弹出的窗口返回值给父窗口具体实现
Nov 23 Javascript
禁止页面刷新让F5快捷键及右键都无效
Jan 22 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
Dec 25 Javascript
node.js中express中间件body-parser的介绍与用法详解
May 23 Javascript
JavaScript实现的搜索及高亮显示功能示例
Aug 14 Javascript
JavaScript实现省市联动过程中bug的解决方法
Dec 04 Javascript
浅析vue深复制
Jan 29 Javascript
vuejs 制作背景淡入淡出切换动画的实例
Sep 01 Javascript
推荐一个基于Node.js的表单验证库
Feb 15 Javascript
jquery多级树形下拉菜单的实例代码
Jul 09 jQuery
Node登录权限验证token验证实现的方法示例
May 25 Javascript
vue基于Echarts的拖拽数据可视化功能实现
Dec 04 Vue.js
详解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小偷的核心程序
2007/04/09 PHP
深入eAccelerator与memcached的区别详解
2013/06/06 PHP
PHP简单获取多个checkbox值的方法
2016/06/13 PHP
php抛出异常与捕捉特定类型的异常详解
2016/10/26 PHP
PHP智能识别收货地址信息实例
2019/01/05 PHP
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
六款帮助你实现惊艳视差滚动效果的jQuery插件
2012/09/14 Javascript
jQuery中使用Ajax获取JSON格式数据示例代码
2013/11/26 Javascript
利用JavaScript实现新闻滚动效果(实例代码)
2013/11/27 Javascript
利用JavaScript脚本实现滚屏效果的方法
2015/07/07 Javascript
深入解读JavaScript中的Hoisting机制
2015/08/12 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
layui框架table 数据表格的方法级渲染详解
2018/08/19 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
Jquery+javascript实现支付网页数字键盘
2020/12/21 jQuery
[02:23]2014DOTA2国际邀请赛中国战队回顾
2014/08/01 DOTA
Python文件去除注释的方法
2015/05/25 Python
Python实现连接postgresql数据库的方法分析
2017/12/27 Python
python通过zabbix api获取主机
2018/09/17 Python
Python使用lambda表达式对字典排序操作示例
2019/07/25 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
2020/06/04 Python
如何基于Django实现上下文章跳转
2020/09/16 Python
怀旧收藏品和经典纪念品:Betty’s Attic
2018/08/29 全球购物
村委会主任先进事迹
2014/01/15 职场文书
班长自荐书范文
2014/02/11 职场文书
祖国在我心中演讲稿500字
2014/05/04 职场文书
减负增效提质方案
2014/05/23 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
监察建议书
2015/02/04 职场文书
工程质量保证书
2015/05/09 职场文书
毕业生学校组织意见
2015/06/04 职场文书
一文搞懂MySQL索引页结构
2022/02/28 MySQL
MYSQL中文乱码问题的解决方案
2022/06/14 MySQL