MQTT软硬结合数据通信协议_基于微信小程序实现

本文介绍了MQTT协议的基础知识及其在物联网和M2M通信中的应用。通过引入mqtt.min.js库,展示了如何连接MQTT服务器,订阅和发布消息,并处理连接、错误和重连事件。总结了使用MQTT实现软硬件连接的基本步骤。
摘要由CSDN通过智能技术生成

基于MQTT实现的软件硬件通信协议

 

 


前言

        MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

 

 

一、MQTT是什么?

        MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。

二、使用步骤

1.引入库

代码如下(示例):

var mqtt=require('../../utils/mqtt.min.js')
        connect(){
                const clientId = 'mqttjs_' + Math.random().toString(16).substr(2, 8)
             
                const myoptions={
                     connectTimeout:4000,
                     clientId:'按照需要填写',
                     port:8083,
                     username:"按照需要填写",
                     password:"按照需要填写"
                }
                            
                console.log('Connecting mqtt client')
        
                    const client=mqtt.connect('wx://服务器地址',myoptions)
                    console.log(client)
                    
                    client.on('connect', () => {
                      console.log('Client connected:' + clientId)

                    client.subscribe('接收主题', { qos: 0 },function(err){
                          if(!err){
                              console.log('订阅成功')
                          }
                      })
                    })
                    
                    client.on('message', (topic, message, packet) => {
                        console.log("收到")
                         console.log("消息:")
                      console.log(message.toString())
                      
                      //console.log(JSON.parse(message.toString()))
                      console.log("主题:")
                      console.log(topic)
                    })
                    
                    client.on('error', (err) => {
                      console.log('Connection error: ', err)
                      client.end()
                    })
                    
                    client.on('reconnect', () => {
                      console.log('Reconnecting...')
                    })
                
            }

总结

使用MQTT实现软件硬件的连接实现发布订阅消息的功能

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值