【MQTT 学习二】主题

MQTT协议中的主题是关键概念,具有区分大小写、可含空格的字符串。主题可分级,如home/sensor/led/brightness,用/分隔各级。单级通配符+匹配任意一级,多级通配符#匹配任意多级。注意避免使用/开头的主题,不推荐使用中文和空格,应使用ASCII字符。
摘要由CSDN通过智能技术生成

主题在MQTT协议中是一个很重要的概念

主题基本形式

主题就是一个字符串,其特征如下:

1、区分大小写
2、可以使用空格,但是尽量不要使用
3、不要使用中文主题,使用ASCII字符作为MQTT主题

主题分级

为了更好的对主题进行管理和分类,MQTT协议支持主题分级,对主题进行分级处理,各个级别之间使用“/”符号进行分隔。
例如:

"home/sensor/led/brightness"	

上面示例是一个四级主题

第1级:home
第2级:sensor
第3级:led
第4级:brightness

注:主题名不要使用“/”开头

主题通配符

单级通配符:+

单级通配符可以匹配任意一个主题级别,例如

“home/sensor/+/status”

可以匹配到
“home/sensor/led/ststus”
“home/sensor/key/ststus”
“home/sensor/beep/ststus”
……

不能匹配到
"dt/sensor/led/status"

多级通配符:#

多级通配符可以匹配任意数量个主题级别,例如

"home/sensor/#"

可以匹配到
"home/sensor/led"
"home/sensor/key"
"home/sensor/beeper"
"home/sensor/led/status"
"home/sensor/led/brightness"
"home/sensor/key/status"
"home/sensor/beeper/status"

不能匹配到
"home/kash/led
"dt/sensor/led"
"dt/kash/led"

主题注意事项

  • 以$开头的主题
    以$开头的主题是MQTT服务端系统保留的特殊主题,客户端不可随意订阅或向其发布信息。

  • 不要使用“/”作为主题开头

  • 主题中不要使用空格

  • 主题简洁明了

  • 主题中尽量使用ASCII字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值