MQTT协议学习笔记(六)

本文深入解析MQTT协议中SUBSCRIBE报文的结构与功能,涵盖固定报头、可变报头及有效载荷细节,通过实例讲解如何订阅阿里云Topic,适合物联网与消息队列技术的学习者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MQTT协议学习笔记(六)

SUBSCRIBE报文详解

阿里云Topic列表介绍

POST :广播
SET :订阅 (阿里云默认全部定义了)
在这里插入图片描述

SUBSCRIBE固定报头

SUBSCRIBE固定报头 = BYTE1(报文类型) + (剩余长度)
固定报头BYTE1 = 0X82 (低四位为 0010)
剩余长度 与 CONNECT的剩余长度一致
在这里插入图片描述

SUBSCRIBE可变报头

报文标识符

报文标识符两个字节长度,相当于消息ID,将你订阅的消息取一个 别称ID;方便服务器回复是否订阅成功,初步可设置为0X00 0X0A;
在这里插入图片描述

有效载荷

SUBSCRIBE报文的有效载荷包含了一个主题过滤器列表,它们表示客户端想要订阅的主题。
前两个字节为主题字符串的长度
在这里插入图片描述
比如我们要订阅这个主题 /sys/a17uvxb3Eyb/lot_T/thing/service/property/set
主题 = /sys/a17uvxb3Eyb/lot_T/thing/service/property/set
HEX = 2F 73 79 73 2F 61 31 37 75 76 78 62 33 45 79 62 2F 6C 6F 74 5F 54 2F 74 68 69 6E 67 2F 73 65 72 76 69 63 65 2F 70 72 6F 70 65 72 74 79 2F 73 65 74
字节数 = 49 = 0X31
Byte1 = 0X00,Byte2 = 0X31,主题(hex),再后面是消息质量 0X00-0X02;

综上SUBSCRIBE报文
82 36 00 0A 00 31 2F 73 79 73 2F 61 31 37 75 76 78 62 33 45 79 62 2F 6C 6F 74 5F 54 2F 74 68 69 6E 67 2F 73 65 72 76 69 63 65 2F 70 72 6F 70 65 72 74 79 2F 73 65 74 00
可同时订阅多个主题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值