MQTT学习(二)

订阅主题和订阅确认

SUBSCRIBE——订阅主题

之前的CONNECT报文,分为

  • 固定报头:必须存在,用于描述报文信息。里面有指出什么类型的报文,报文的等级。
  • 可变报头:不一定存在。主要看什么样子类型的报文。
  • 有效载荷部分:这是内容,也是通信信息的存放的地方,只是有时候还会存放一些额外的信息,如客户ID。

SUBSCRIBE报文

客户端向服务端订阅!

  1. 服务端发送PUBLISH报文给客户端。
  2. SUBSCRIBE报文指定了最大的QoS等级(服务质量要求)。

固定报头

在这里插入图片描述

可变报头在这里插入图片描述

有效载荷

主题过滤器
服务质量要求(Qos等级)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用订阅主题的时候一定要connect上服务器!
客户端向服务器订阅!

SUBACK——订阅确认

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

取消订阅UNSUBSCRIBE和取消订阅确认

客户端向服务端取消订阅!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

取消订阅确认UNSUBACK

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发布消息PUBLISH

PUBLISH控制报文是指从客户端向服务端或者服务端向客户端传输一个应用消息。

在这里插入图片描述

可变报头

主题名Topic Name:用于识别有效载荷数据应该被发布到哪一个信息通道。
在这里插入图片描述
报文标识符Packet Identifer只有当QoS等级是1或2时,报文标识符(Packet Identifer)字段才能出现在PUBLISH报文中。

在这里插入图片描述

有效载荷

有效载荷包含将发布的应用消息。
数据的内容和格式是应用特定的。

特定的格式:JSON

在这里插入图片描述

响应

在这里插入图片描述

动作

客户端使用PUBLISH报文发送应用消息给服务端,目的是分发到其它订阅匹配的客户端。

服务端使用PUBLISH报文发送应用消息给每一个订阅匹配的客户端。

JSON

JavaScript Object Notation,JS对象简谱,是一种轻量级的数据交换格式,JSON指的是JavaScript对象表示法。

{
	"firstName":"John"
}
  • {}:大括号表示对象——键
  • “”:双引号内表示属性或者值——指

键:必须是字符串
值:字符串、数组[]、对象{}、数字等

{
	"method":"thing.event.property.post",
	"id":"00000001",
	"params":{"PwoerSwitch":0},
	"version":"1.0.0"
}

多个键之间用,表示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不要复制长度到网络调试助手
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
消息转换成十六进制
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/624827.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Go PDF文件操作

目录 介绍 安装 gofpdf API 代码示例 结果展示 介绍 gofpdf 是一个在 Go 语言中用于生成 PDF 文档的库。 安装 gofpdf 首先,你需要安装 gofpdf 库。你可以使用 go get 命令来安装它: go get github.com/jung-kurt/gofpdf API 功能 函数名参数解释示…

25. K 个一组翻转链表 - 力扣(LeetCode)

基础知识要求: Java:方法、while循环、for循环、if else语句 Python: 方法、while循环、for循环、if else语句 题目: 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个…

【目标检测】YOLOv5|YOLOv8模型QT界面可视化部署

YOLO-Deploy-QT_Interface 最近笔者做了YOLO系列算法的部署工作,现做一个总结。主要工作是做了用于部署YOLOv5和YOLOv8的可视化QT界面,可实现图片、文件夹、视频、摄像头的ONNX与OpenVino部署,具体效果如下: 代码链接:https://github.com/Zency-Sun/YOLO-Deploy-QT_Inte…

深入学习Linux内核之v4l2应用编程(二)

一,用户空间访问v4l2设备步骤 V4L2(Video for Linux 2)是Linux中关于视频设备的内核驱动,它使得Linux系统能够支持视频设备,如摄像头。对于Camera V4L2的应用编程,一般遵循以下步骤: 1&#x…

【正则表达式】1、元字符的认识与分类

1、元字符的概念 正则表达式的常见功能,分别是校验数据的有效性、查找符合要求的文本以及对文本进行切割和替换等操作。 我想你一定在办公软件,比如 Word、Excel 中用过这个功能。你可以使用查找功能快速定位关注的内容,然后使用替换&#xf…

leetcode-最长公共子序列(二)-103

题目要求 思路 step 1:优先检查特殊情况。 step 2:获取最长公共子序列的长度可以使用动态规划,我们以dp[i][j]dp[i][j]dp[i][j]表示在s1中以iii结尾,s2中以jjj结尾的字符串的最长公共子序列长度。 step 3:遍历两个字…

视频号小店从开店到爆单,最详细的攻略教学,来了!

大家好,我是喷火龙 视频号小店从推出到现在一直备受关注,我的团队已经入局视频号小店一年多了, 可以说,新手做视频号小店采用无货源模式和达人带货的玩法依旧是最合适的。 虽然说这个模式和玩法很多人之前都接触过,…

精准追踪,高效分析——Xinstall应用数据分析平台

在当前的移动互联网时代,App应用的数量与日俱增,如何从这些应用中脱颖而出,成为开发者和广告主们亟待解决的问题。而在这个问题中,数据无疑是一把关键的钥匙。今天,我们要介绍的就是国内专业的App全渠道统计服务商——…

普中STM32F103ZET6开发板让DS0和DS1两个LED同时亮

欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.代码 三.运行效果 一.前言 在这套stm32教程中,只教学了如何亮DS0,而没有教学如何亮DS1。 二.代码 main.c #include "stm32f10x.h"void Syst

Linux下Redis下载及安装教程(实测有效)

一、配置gcc 由于Redis是基于c语言编写的需要安装依赖,需要安装gcc,在Linux系统里需要存在C语言的编译环境,一般的Linux系统安装的时候会自动安装,由于我是最小安装模式,所以我需要自己再另外安装一下。 判断系统是否安装gcc&…

2024年Java程序员的职业发展路径

程序员的职业路径是非常清晰的,但是现实情况下,很多人卡在了高级开发就再也上不去,直到遇到职业发展的危机,比如: 35岁大龄程序员找工作难,国内很多大型互联网公司在招聘要求上,会限制35岁这个年…

PuLID: 图像背景、光线、风格等均保持高度一致图像生成工具,附本地一键包

PuLID是一种无需调优的ID定制方法。PuLID保持了高的ID保真度,同时有效地减少了对原始模型行为的干扰。 只需要提供一张照片,就可以生成高还原度的各种风格的图像。 使用方法:解压一键包,双击一键启动 点击ID图像(主…

李国武:确保FMEA实现预期质量目标的方法有哪些?

在现代制造业中,FMEA(失效模式与影响分析)已经成为一项至关重要的质量管理工具。它通过对产品或过程进行系统的分析,识别潜在的失效模式,评估其影响,并制定相应的预防措施,从而确保产品或过程的…

Nginx 代理 MySQL 实现通过域名连接数据库

文章目录 Nginx 模块介绍Stream 模块配置远程连接 MySQLDataGrip 连接 MySQL Nginx 安装这里不做介绍。域名默认已经解析到服务器公网IP。 Nginx 模块介绍 HTTP 模块: HTTP模块提供了处理HTTP请求的功能,包括反向代理、负载均衡、缓存、HTTP代理等。 例…

Docker下载镜像出现“missing signature key”如何解决?

“missing signature key” 通常与 Docker 配置有关,具体是 Docker 试图验证镜像的签名但未能找到相应的密钥。这种情况可能发生在启用了 Docker Content Trust (DCT) 的环境中,DCT 是一种安全功能,要求所有镜像必须有签名才能拉取。 原因 …

资料同化 | 搭建docker环境-1

Community Gridpoint Statistical Interpolation (GSI) system DTC 是一个分布式设施,NWP 社区可以在这里测试和评估用于研究和操作的新模型和技术。 DTC的目标包括: 链接研究和操作社区 研究成果转化为实际操作的速度 加快改善天气预报 开发和测试有…

独享静态IP:跨境网络新助手

在数字化浪潮席卷全球的今天,互联网已成为人们生活中不可或缺的一部分。而在这个由数据和信息构成的虚拟世界里,IP地址作为每一个网络设备的独特标识,其重要性不言而喻。特别是独享静态IP,它不仅为用户提供了更加稳定、安全的网络…

在虚机VirtualBox7.0.8安装Androidx86_64系统详细步骤要点

最近需要用到安卓系统蓝牙功能做测试,就选择了Virtualboxandroidx86方案,先把系统安装好,后面看是否可以比较好的完成蓝牙功能测试。如果可以的话,我会再发文分享下的,敬请期待。 1.准备材料 (1&#xff…

[数据集][目标检测]交通灯检测数据集VOC+YOLO格式2600张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2600 标注数量(xml文件个数):2600 标注数量(txt文件个数):2600 标注…

食家巷传统面点积极响应中国品牌日,打造国货潮牌

2024 年中国品牌日活动以“中国品牌,世界共享;国货潮牌,品筑未来”为主题,旨在推动中国品牌的发展和国际化,展示国货潮牌的魅力和创新。食家巷传统面点品牌积极响应活动号召,以实际行动助力中国品牌的崛起。…