VUE 使用MQTT 配合 will遗嘱消息

 vue使用MQTT.js遗嘱失效问题 

https://segmentfault.com/q/1010000023264969?utm_source=sf-similar-question%20https://segmentfault.com/q/1010000023264969?utm_source=sf-similar-question

https://zhuanlan.zhihu.com/p/637574135

https://blog.csdn.net/xu275321143/article/details/129982081

function mqttRequest({
url,
port,
mac,
userName = "",
passWord = ""
}) {
let agreement;
//1.协议
// #ifdef H5
agreement = "ws://"
// #endif
// #ifdef MP-WEIXIN||APP-PLUS
agreement = "wx://"
// #endif
// 2.端口
url = `${agreement}${url}`;
console.log(url)
// 4.根据协议规则必须传递userName: 'admin',password: 'password',
let client = mqtt.connect(url, {
port: port,
username: userName,
clean: true, // 保留回话
// connectTimeout: 4000, // 超时时间
password: passWord,
mac: mac,
keepalive: 10,
keepAliveInterval: 4, //心跳包
timeout: 6, //超时时间
reconnect: true, //自动重连
will: {
topic: 'error',
payload: 'Connection Closed abnormally..!',
retain: false,
qos: 0,
},
})
return client
}

 综合资料尝试

<template>

  <div>

    <h1>LED - IOT</h1>

    <button @click="connectToBroker">链接</button>

    <button @click="subscribe">Subscribe</button>

    <button @click="publish">Publish</button>

  </div>

</template>

<script>

import { ref, onMounted, onBeforeUnmount } from 'vue'

// import mqtt from 'mqtt'

// import hexHmacSha1 from '../utils/hex_hmac_sha1'

export default {

  name: 'LED',

  setup() {

    const deviceConfig = {

      username: 'lkj123',

      password: 'Tshun163',

      productKey: 'xx',

      // defaultTopic: topic,

      // topic1,

      // test,

      timeout: 10, // 超时时间 (单位:秒)

      keepalive: 5, // 心跳 (单位:秒)

      keepAliveInterval: 4, //心跳包

      enabled: true, // 是否使用mqtt功能

      // reconnect: true, //自动重连

      will: {

        topic: 'error',

        payload: 'Connection Closed abnormally..!',

        qos: 0,

      },

    }

    const client = ref(null)

    const connectToBroker = () => {

      const options = deviceConfig

      console.log(options)

      client.value = mqtt.connect(

        'ws://192.165.10.187:8083/mqtt',

        // 'ws://broker.emqx.io:8083/mqtt',

        options,

      )

      client.value.on('connect', () => {

        console.log('Successfully connected to the server')

      })

      client.value.on('message', (topic, message) => {

        let msg = message.toString()

        console.log('Received message: ' + msg)

  &nb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值