目录
1. 概述
协议详细描述:https://blog.csdn.net/XieWinter/article/details/101198750
MQTT通过“主题”实现将消息从发布者客户端送达至接收者客户端。“主题”是附加在应用消息上的一个标签,发布者客户端将“主题”和“消息”发送至代理服务器,代理服务器将该消息转发至每一个订阅了该“主题”的订阅者客户端。
一个主题名可以由多个主题层级组成,每一层通过“/”斜杠分隔开,例如:“topicRoot/F1”,“topicRoot/F2”。如果用户需要一次订阅多个具有类似结构的主题,可以在主题过滤器中包含通配符。通配符只可用在主题过滤器中,在发布应用消息时的主题名不允许包含通配符,主题通配符有两种:
- #:表示匹配>=0个层次,比如a/#就匹配a,a/,a/b,a/b/c。单独的一个#表示匹配所有,不允许a#或a/#/c等形式。
- +:表示匹配一个层次,例如a/+匹配a/b,a/c,不匹配a/b/c。单独的一个+是允许的,但a+为非法形式。
通配符可以应用在物接入策略中和实体设备的订阅主题中,通过以下示例我们可以进一步了解通配符的作用。
2. 示例说明
我们使用下表的配置在云端创建四个物接入用户。
测试环境为:百度天工物接入及PC端软件MQTT FX
项目名称 (Endpoint) |
用户名称 |
身份名称 |
策略名称 |
主题 |
权限 |
endpoint01 |
thing01 |
principal01 |
policy0 |