微信小程序连接服务器展示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 相关文章推荐
ExtJS下grid的一些属性说明
Dec 13 Javascript
JavaScript 错误处理与调试经验总结
Aug 10 Javascript
Javascript图像处理思路及实现代码
Dec 25 Javascript
js添加table的行和列 具体实现方法
Jul 22 Javascript
关于Javascript加载执行优化的研究报告
Dec 16 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
Apr 02 Javascript
jQuery绑定事件on()与弹窗的简要概述
Apr 27 Javascript
jQuery表单事件实例代码分享
Aug 18 Javascript
JS基于递归实现网页版计算器的方法分析
Dec 20 Javascript
vuex操作state对象的实例代码
Apr 25 Javascript
axios使用拦截器统一处理所有的http请求的方法
Nov 02 Javascript
vue中slot(插槽)的介绍与使用
Nov 12 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分页函数
2006/10/09 PHP
PHP XML操作类DOMDocument
2009/12/16 PHP
iis下php mail函数的sendmail配置方法(官方推荐)
2012/04/25 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
PHP生成二维码与识别二维码的方法详解【附源码下载】
2019/03/07 PHP
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
2016/04/06 Javascript
ES6新特性之Symbol类型用法分析
2017/03/31 Javascript
微信小程序登录态控制深入分析
2017/04/12 Javascript
JS实现加载和读取XML文件的方法详解
2017/04/24 Javascript
node.JS md5加密中文与php结果不一致的解决方法
2017/05/05 Javascript
jQuery中可见性过滤器简单用法示例
2018/03/31 jQuery
Redux实现组合计数器的示例代码
2018/07/04 Javascript
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
Vue中Axios从远程/后台读取数据
2019/01/21 Javascript
详解JavaScript 新语法之Class 的私有属性与私有方法
2019/04/23 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
JavaScript setInterval()与setTimeout()计时器
2019/12/27 Javascript
Python基于select实现的socket服务器
2016/04/13 Python
Python递归实现汉诺塔算法示例
2018/03/19 Python
Pythony运维入门之Socket网络编程详解
2019/04/15 Python
Python3基础教程之递归函数简单示例
2019/06/07 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
Python3.9新特性详解
2020/10/10 Python
Python中的面向接口编程示例详解
2021/01/17 Python
基于Python-Pycharm实现的猴子摘桃小游戏(源代码)
2021/02/20 Python
澳大利亚时尚前卫设计师珠宝在线:Amber Sceats
2017/10/04 全球购物
递归实现回文判断(如:abcdedbca就是回文,判断一个面试者对递归理解的简单程序)
2013/04/28 面试题
Java语言的优势
2015/01/10 面试题
军训自我鉴定100字
2014/02/13 职场文书
大气污染防治方案
2014/05/19 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
情感电台广播稿
2015/08/18 职场文书