MQTT协议-取消订阅和取消订阅确认
创始人
2024-05-31 04:28:34
0

MQTT协议-取消订阅和取消订阅确认

客户端向服务器取消订阅

取消订阅的前提是客户端已经通过CONNECT报文连接上服务器,并且订阅了一个主题

UNSUBSCRIBE—取消订阅

取消订阅的报文同样是由固定报头+可变报头+有效载荷组成

固定报头由两个字节组成,第一个字节固定为A2,第二个字节是剩余长度

在这里插入图片描述

可变报头的字节与订阅主题报文的可变报头内容一致,也就是取消和订阅的是同一个主题,不能没有订阅就取消,根据前面文章知道订阅主题报文的可变报头为00 0A,所以这里也是00 0A

在这里插入图片描述

在订阅主题时有效载荷是由主题过滤器和服务质量要求组成的,但这里取消订阅就没有了服务质量要求,只有一个主题过滤器,该主题也是具有订阅权限的Topic类,要转为十六进制才能组合报文

在这里插入图片描述

将自己的订阅权限Topic类转为十六进制,长度为30,十六进制为1E,结果如下

在这里插入图片描述

网络调试助手发送取消订阅报文

先发送CONNECT报文连接阿里云,再发送订阅主题报文,最后发送取消订阅主题报文,阿里云回复了取消订阅确认报文B0 02 00 0A,后续对该报文进行解析

在这里插入图片描述

UNSUBACK一取消订阅确认

阿里云回复的取消订阅确认报文由固定报头+可变报头+有效载荷组成

固定报头如下

在这里插入图片描述

可变报头与取消订阅报文的可变报头一致,都表示同一个Topic主题

在这里插入图片描述

取消订阅确认报文没有有效载荷,所以这一部分为空

在这里插入图片描述

因此,将固定报头+可变报头+有效载荷组合起来,就得到了B0 ?? 00 0A

根据剩余长度计算方法可知,??后面只有两个字节,因此剩余长度为02,所以取消订阅确认的完整报文为:B0 02 00 0A

相关内容

热门资讯

建信北证50成份指数型发起式证... 建信北证50成份指数型发起式证券投资基金合同全文和招募说明书全文于2025年7月11日在本公司网站(...
悍高集团股份有限公司首次公开发... 保荐人(主承销商):国泰海通证券股份有限公司特别提示悍高集团股份有限公司(以下简称“悍高集团”、“发...
上海沪工焊接集团股份有限公司关... 证券代码:603131 证券简称:上海沪工 公告编号:2025-040债券代码:113593 债券...
大学生创业调查报告 大学生创业...    【大学生创业调查报告】浙江是一块创业的热土,民营经济兴旺发达的省份。浙江高等教育也是走在中国教...
黄河岸边的故事在破土新生 当清晨的第一缕阳光掠过山脊,坐落在黄河岸边的578栋日光温室次第苏醒闪光,宛如大地馈赠的珍珠项链。站...
新兴消费系列研究之三:婴童消费... 人口结构变化催生“新消费”趋势,规模和内容两个维度带来新变化人口结构变迁催生“新消费”。“新消费”趋...
张海峰:"中国双创赤... “中国双创赤峰模式”是赤峰市政府和北京安快创业谷经过八个月的探讨和交流,针对内蒙古及赤峰市的现状完全...
重庆望变电气(集团)股份有限公... 证券代码:603191 证券简称:望变电气 公告编号:2025-034重庆望变电气(集团)股份有限...
东方今报数字报刊平台 东方今报... 在2020年中国国际服务贸易交易会上,河南不仅带来了河南创意的服务贸易发展成果,更是收获了一批重点项...
成都豪能科技股份有限公司关于使... 证券代码:603809 证券简称:豪能股份 公告编号:2025-039转债代码:113690 转债...