Vue项目接入MQTT

Vue项目接入MQTT

安装mqtt库

安装3.0.0 版本,高版本可能会出错。

"mqtt": "^3.0.0",
npm install mqtt --save

在这里插入图片描述

Vue代码实现

<template>
  <div id="app">
    <p>mqtt收到的数据:</p>
    <p>{{this.msg}}</p>
  </div>
</template>

<script>

  import mqtt from 'mqtt'

  var client
  const options = {
    connectTimeout: 40000,
    clientId: 'mqtitId-Home',
    username: 'admin',
    password: 'admin123',
    clean: true
  }
  client = mqtt.connect('ws://172.80.5.222:8083/mqtt', options)
  export default {
    data() {
      return {
        msg: '--'
      }
    },

    created() {
      this.mqttMsg()
    },

    methods: {
      mqttMsg() {
        client.on('connect', (e) => {
          console.log("连接成功!!!")
          client.subscribe('/wjw1014', { qos: 0 }, (error) => {
            if (!error) {
              console.log('订阅成功')
            } else {
              console.log('订阅失败')
            }
          })

        })
        // 接收消息处理
        client.on('message', (topic, message) => {
          console.log('收到来自', topic, '的消息', message.toString())
          this.msg = message.toString()
        })
      }
    }


  }
</script>
<style scoped>
</style>

发送mtqq

client.publish('/wjw/wjw', 'hhhhh', 0, error=> {
   if(!error) {
       console.log('----> ', '发送成功')
   }
})

测试

mqtt模拟工具发送主题消息:

在这里插入图片描述

页面收到的mqtt消息:

在这里插入图片描述

订阅多个主题的,用逗号分隔,接收主题消息根据主题区分消息处理

参考资料:https://blog.csdn.net/qq_32168087/article/details/88883936

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值