微信小程序连接服务器展示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 相关文章推荐
jQuery 开天辟地入门篇一
Dec 09 Javascript
javascript 函数参数限制说明
Nov 19 Javascript
通过jQuery源码学习javascript(一)
Dec 27 Javascript
javascript使用call调用微信API
Dec 15 Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 Javascript
JavaScript中Function函数与Object对象的关系
Dec 17 Javascript
jQuery获取及设置表单input各种类型值的方法小结
May 24 Javascript
jQuery实现智能判断固定导航条或侧边栏的方法
Sep 04 Javascript
浅谈vue首屏加载优化
Jun 28 Javascript
详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
Apr 04 Javascript
ionic2.0双击返回键退出应用
Sep 17 Javascript
JavaScript的console命令使用实例
Dec 03 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
phpfans留言版用到的数据操作类和分页类
2007/01/04 PHP
php的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
php 魔术方法详解
2014/11/11 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
JavaScript中使用replace结合正则实现replaceAll的效果
2010/06/04 Javascript
jquery删除ID为sNews的tr元素的内容
2014/04/10 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
基于javascript实现图片懒加载
2016/01/05 Javascript
JavaScript里 ==与===区别详解
2016/08/16 Javascript
AngularJS使用ng-repeat遍历二维数组元素的方法详解
2017/11/11 Javascript
javascript按顺序加载运行js方法
2017/12/01 Javascript
vue给input file绑定函数获取当前上传的对象完美实现方法
2017/12/15 Javascript
实例讲解v-if和v-show的区别
2019/01/31 Javascript
原生js实现trigger方法示例代码
2019/05/22 Javascript
如何解决js函数防抖、节流出现的问题
2019/06/17 Javascript
关于NodeJS中的循环引用详解
2019/07/23 NodeJs
如何利用node.js开发一个生成逐帧动画的小工具
2019/12/01 Javascript
js canvas实现俄罗斯方块
2020/10/11 Javascript
NodeJS模块Buffer原理及使用方法解析
2020/11/11 NodeJs
详解Django框架中的视图级缓存
2015/07/23 Python
Python实现的圆形绘制(画圆)示例
2018/01/31 Python
python3学生名片管理v2.0版
2018/11/29 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
python主要用于哪些方向
2020/07/05 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
大学生求职简历的自我评价
2013/10/21 职场文书
党员自我评价分享
2013/12/13 职场文书
公司委托书格式范文
2014/04/04 职场文书
高中国旗下的演讲稿
2014/08/28 职场文书
党员先进性教育整改措施
2014/09/18 职场文书
史上最牛的辞职信
2015/02/28 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android