如何在微信小程序中使用mqtt服务

  介绍

如何在微信小程序中使用mqtt服务?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

js中连接mqtt服务器是通过websocket来实现的,我在网上找了两个库,一个是eclipse开发的paho-mqtt。

项目地址:https://github.com/eclipse/paho.mqtt.javascript

一个是个人开发的mqttjs,项目地址:https://github.com/mqttjs/MQTT.js

比较了下,mqqtt.js比较灵活对小程序也有很好的支持,所以采用了这个库来做连接。

于是看了下他自己的介绍,直接拿过来试用了下,因为是直接用在小程序中不需要那么复杂,它提供了静态的cdn下载,

直接打开链接复制到工程中直接用就可以,不用更改.cdn地址:https://unpkg.com/mqtt@2.18.8 dist/mqtt.js分钟版:https://unpkg.com/mqtt@2.18.8 dist/mqtt.min.js;

使用起来也很简单,直接贴代码

function  connectMq () {   ,//才能,连接选项   const 才能;options =, {   ,,,connectTimeout: 4000,,//,超时时间   ,,//,认证信息,按自己需求填写   ,,,clientId: & # 39; & # 39;   ,,,用户名:& # 39;xxx # 39;   ,,,密码:& # 39;xxx # 39;   ,,}   let 才能;phone =, app.globalData.myInfo.TelPhone;   const 才能;client =, mqtt.connect(& # 39;天气://xx.xxxxxxx& # 39;,,选项)   ,   client.on才能(& # 39;连接# 39;,,(错误),=祝辞,{   ,,console.log(& # 39;正在重连:& # 39;,,错误)   })才能   ,   client.on才能(& # 39;错误# 39;,,(错误),=祝辞,{   ,,console.log(& # 39;连接失败:& # 39;,,错误)   })才能   ,   client.on才能(& # 39;连接# 39;,,(e),=祝辞,{   ,,console.log(& # 39;成功连接服务器& # 39;111)   ,,,//订阅一个主题   ,,client.subscribe (& # 39; phone_& # 39;, +,电话,,{,qos: 0,},, function  (err), {   ,,,if (!呃),{   ,,,,//client.publish (& # 39; 123 & # 39;, & # 39; Hello  mqtt # 39;)   ,,,,console.log(“订阅成功“)   ,,,}   ,   ,,})   })才能//监才能听mq的返回   client.on才能(& # 39;消息# 39;,,function (话题,,消息,,包),{   ,,//,message  is 缓冲区   ,,console.log (“packet",, packet.payload.toString ())   ,,client.end ()   })才能   }

这里着重要注意的连接地址的写法

//mqtt.connect(& # 39;天气://xxxxxxxxxx& # 39;,,选项);//wx://, xx.xx.xxxxxxx//协议版本,链接地址//微信小程序这个版本,作者自己封装了一层,wx表示普通的ws协议连接,wxs表示加密之后的wss协议连接。

关于如何在微信小程序中使用mqtt服务问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

如何在微信小程序中使用mqtt服务