客户端发布和订阅
发布信息
发布信息:PUBLISH
客户端向服务器发布信息
PUBLISH
报文内容:
topicName
:主题名字,向哪个主题发布信息payload
:发布的具体信息内容retainFlag
:保留标志,当客户端向服务端发送PUBLISH
报文中若retainFlag
数据设置为true
时,服务端保存其信息,其他客户端一旦订阅的某个主题,马上就会收到信息内容packetId
:为数据包编号,用于服务端管理数据包qos
:服务质量,信息的重要性标准,级别越高,重要性越高QoS
服务质量等级:告诉我们哪些信息是重要的,需要准确传输,哪些信息不是特别重要,传输中丢失不会影响系统的运行QoS=0
最多发一次,发送端只发一次,不管信息有没有被接收端接收到,不会重发信息QoS=1
最少发一次,发送端发送信息后,要接收端发送确认信息,若没有收到确认信息,发送端会继续发信息,到得到确认信息为止QoS=2
保证收一次,接收端发送两次确认信息
dupFlag
:重发标志,重发发送,true为信息会重发
订阅主题
订阅主题:SUBSCRIBE
客户端向服务器订阅主题,一个SUBSCRIBE
报文可以包含单个或者多个订阅主题名
订阅确认:SUBACK
服务器向客户端回复订阅确认
SUBACK
报文内容:
returnCode
:订阅返回码,客户端向服务端发送订阅请求后,服务端会给客户端返回一个订阅返回码
取消订阅
取消订阅:UNSUBSCRIBE
客户端向服务器取消订阅
一个取消订阅数据包可以有多个取消的主题名,可以一次性取消订阅多个主题