plsql登录没有connect as_阿里云物联网平台使用心得(17)实际测试CONNECT报文

本文介绍使用网络调试助手测试MQTT CONNECT报文的过程,包括设置TCP连接、构造CONNECT报文并发送,以及解析接收到的CONNACK响应。

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

ab5dde58901c8354d919a2b1b7ff5d2a.png

题目

大家好,超子又和大家见面了,超子我能力有限,水平不高,有什么错误的地方,欢迎板砖。前面第(13)(14)(16)这3篇文章,超子分别给大家介绍了CONNECT报文中的固定报头、可变报头和负载,今天超子就用网络调试助手软件实际的测试一下。

其实我们还有一个地方没有解决,就是固定报头中的剩余长度。通过前面的文章可知,可变报头是10个字节,负载是100个字节,剩余长度 = 10 + 100 = 110,110/128 = 0,不需要进位,剩余长度1个字节即可,如此固定报头就定下来了,我们简化16进制进行书写,结果如下:10 6E

如此一来CONNECT报文的最终结果如下,简化16进制书写,去掉0x

10 6E 00 04 4D 51 54 54 04 C2 00 64 00 26 44 30 30 31 7C 73 65 63 75 72 65 6D 6F 64 65 3D 33 2C 73 69 67 6E 6D 65 74 68 6F 64 3D 68 6D 61 63 73 68 61 31 7C 00 10 44 30 30 31 26 61 31 32 64 54 49 72 6F 54 4A 43 00 28 35 33 66 65 37 33 36 65 64 37 35 34 38 32 34 39 32 33 34 64 37 38 64 33 38 33 66 34 66 38 31 38 64 63 64 39 36 61 37 65

然后我们用网络调试助手实验一下

d975aeb3f8beb2696306c5251dc6d4f6.png

首先建立TCP连接

我们先进行网络设置

协议类型:选择TCP Client

本地主机地址:软件自动获取的电脑IP地址,这个我们不用设置

远程主机地址:这个地方填写域名和端口号,注意用冒号: 分隔域名和端口号 ,域名和端口号在第(16)篇文章中超子给大家介绍了,结果如下:

a12dTIroTJC.iot-as-mqtt.cn-shanghai.aliyuncs.com:1883

一定注意用冒号: 分隔,不然地址错误,连接不上服务器,确认正确后,点击连接

a1b85743f9c279e742c28afa0e5e2560.png

发送CONNECT报文

如果TCP链接成功建立,连接按钮变成断开,黑灯变成红灯,然后注意勾选按十六进制发送,以及十六进制显示,发送区内把CONNECT报文全部复制进入,点击发送,如果CONNECT报文正确的话,接收区会收到数据,简化的16进制显示20 02 00 00这个就是MQTT协议中的第2个报文CONNACK。

如果收到上述4个字节,表示CONNECT报文正确,如果CONNECT报文有错误的话,CONNACK报文会显示不同的数据,以便于告知我们是什么错误,这个超子下次再说。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值