更新记录
1.0.6(2024-03-30)
新增取消订阅、监听连接丢失、自动重新连接等功能
1.0.5(2024-03-30)
删除class的export
1.0.4(2024-03-30)
删除android下的uts导出default
查看更多
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 3.99,Android:4.4,iOS:不支持 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
使用说明
该插件可用于连接mqtt服务端,也可以用于连接rabbitMQ服务端
如果想连接rabbitMQ
请在rabbitMQ官网下开启mqtt插件并且添加对应配置即可
有关于该插件的疑问或者技术探讨可以微信联系作者(备注来源)
微信号:z1003975792y
API 介绍
连接函数connect
参数 |
类型 |
必填 |
备注 |
option |
object |
是 |
连接参数 |
(res)=>{} |
function |
是 |
连接回调(res.code 200是成功,500是失败) |
import {
connect
} from "@/uni_modules/zy-mqtt";
let option = {
host: 'tcp://10.10.xx.xx:1883', // 主机ip
clientId: 'xxxxx', // 客户端id
userName: 'xxxx', // 用户名
password: 'xxxx', // 密码
cleanSession: false // 可选,默认false,是否开启持续会话
automaticReconnect: true // 可选,默认true,是否自动重连
heartBeat: 60 // 可选,默认60秒, 心跳
timeOut: 30 // 可选,默认30秒,连接超时时间
}
// 先连接mqtt
connect(option, (res) => {
uni.showToast({
title: res.message
})
)
订阅主题函数subscribe
参数 |
类型 |
必填 |
备注 |
topic |
string |
是 |
订阅主题 |
qos |
string |
是 |
QoS(Quality of Service)是MQTT协议中用于确保消息传递质量的机制 0:最多一次传输、1至少一次传输、2仅一次传输 |
(res)=>{} |
function |
是 |
客户端接收到该主题消息的回调(res:object) |
import {
subscribe
} from "@/uni_modules/zy-mqtt";
// 下面是其它客户端或者后端发布消息以json的格式
// 例如 {message:'你好,mqtt'}
subscribe('topic', 2, (res) => {
uni.showToast({
title: res.message // 你好,mqtt
})
})
取消订阅函数unSubscribe
参数 |
类型 |
必填 |
备注 |
topic |
string |
是 |
要取消订阅的主题 |
(res)=>{} |
function |
是 |
取消订阅的回调(res.code 200是成功,500是失败) |
import {
unSubscribe
} from "@/uni_modules/zy-mqtt";
unSubscribe('topic', (res) => {
uni.showToast({
title: res.message
})
})
发布消息函数publishMessage
参数 |
类型 |
必填 |
备注 |
topic |
string |
是 |
主题 |
qos |
string |
是 |
QoS(Quality of Service)是MQTT协议中用于确保消息传递质量的机制 0:最多一次传输、1至少一次传输、2仅一次传输 |
message |
string |
是 |
消息内容 |
(res)=>{} |
function |
是 |
消息发送成功的回调(res.code 200是成功,500是失败) |
import {
publishMessage
} from "@/uni_modules/zy-mqtt";
var messages = JSON.stringify({
message: '你好,mqtt',
phone: '131xxxxxxxx'
})
publishMessage('your/topic', 2, messages, (res) => {
uni.showToast({
title: res.message // 发布消息结果的message
})
})
监听连接丢失函数onConnectLost
参数 |
类型 |
必填 |
备注 |
(res)=>{} |
function |
是 |
连接丢失回调函数 (res.message 丢失原因) |
import {
onConnectLost
} from "@/uni_modules/zy-mqtt";
onConnectLost((res) => {
uni.showToast({
title: res.message // 连接丢失的原因
})
})
监听自动重新连接函数onReconnect
automaticReconnect:true的前提下生效
重新连接后,插件自己会将原来已经订阅的主题主动订阅,无需自己重新订阅
参数 |
类型 |
必填 |
备注 |
(res)=>{} |
function |
是 |
自动重新连接回调函数 (res.code 200是重新连接成功,500是重新连接失败) |
import {
onReconnect
} from "@/uni_modules/zy-mqtt";
onReconnect((res) => {
uni.showToast({
title: res.message // 重新连接的结果
})
})
断开连接函数disConnect
参数 |
类型 |
必填 |
备注 |
(res)=>{} |
function |
是 |
断开连接的回调函数 (res.code 200是断开成功,500是断开失败) |
import {
disConnect
} from "@/uni_modules/zy-mqtt";
disconnectMqtt()
获取配置函数getConfig
import {
getConfig
} from "@/uni_modules/zy-mqtt";
const config = getConfig()
console.log(getConfig) // 返回连接的所有配置信息