微信小程序连接服务器展示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基本概念初级讲解论坛贴的学习记录
Feb 22 Javascript
JavaScript 常见对象类创建代码与优缺点分析
Dec 07 Javascript
javascript function调用时的参数检测常用办法
Feb 26 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 Javascript
JS实现简单的键盘打字的效果
Apr 24 Javascript
浅谈js中子页面父页面方法 变量相互调用
Aug 04 Javascript
基于AngularJS的拖拽文件上传的实例代码
Jul 15 Javascript
微信小程序支付及退款流程详解
Nov 30 Javascript
ES6 系列之 WeakMap的使用示例
Aug 06 Javascript
angular4 获取wifi列表中文显示乱码问题的解决
Oct 20 Javascript
微信小程序后端(java)开发流程的详细步骤
Nov 13 Javascript
JS原型和原型链原理与用法实例详解
Feb 05 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实现Socket服务器的代码
2008/04/03 PHP
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
PHP 数组基础知识小结
2010/08/20 PHP
Zend Studio (eclipse)使用速度优化方法
2011/03/23 PHP
PHP 透明水印生成代码
2012/08/27 PHP
php实现根据url自动生成缩略图的方法
2014/09/23 PHP
PHP实现WebService的简单示例和实现步骤
2015/03/27 PHP
PHP会话处理的10个函数
2015/08/11 PHP
让你的PHP7更快之Hugepage用法分析
2016/05/31 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
php中青蛙跳台阶的问题解决方法
2018/10/14 PHP
js的event详解。
2006/09/06 Javascript
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
2007/05/07 Javascript
javascript之典型高阶函数应用介绍
2013/01/10 Javascript
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
javascript 三种方法实现获得和设置以及移除元素属性
2013/03/20 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
深入理解jQuery.data() 的实现方式
2016/11/30 Javascript
jQuery快速高效制作网页交互特效
2017/02/24 Javascript
Vue单文件组件的如何使用方式介绍
2017/07/28 Javascript
jquery动态赋值id与动态取id方法示例
2017/08/21 jQuery
vue实现2048小游戏功能思路详解
2018/05/09 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
用Python的pandas框架操作Excel文件中的数据教程
2015/03/31 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
使用Python的turtle模块画国旗
2019/09/24 Python
django数据模型(Model)的字段类型解析
2019/12/25 Python
Python类中self参数用法详解
2020/02/13 Python
Django REST Framework 分页(Pagination)详解
2020/11/30 Python
Tretorn美国官网:瑞典外套和鞋类品牌,抵御风雨
2018/07/19 全球购物
初始化了一个没有run()方法的线程类,是否会出错?
2014/03/27 面试题
经理管理专业毕业自荐书范文
2014/02/12 职场文书
2014年审计人员工作总结
2014/12/19 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书