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