当前位置 博文首页 > 04stone37:Mqtt入门之主题与主题过滤器

    04stone37:Mqtt入门之主题与主题过滤器

    作者:[db:作者] 时间:2021-09-05 22:11

    主题Topic

      主题是一个UTF-8字符串,由一个或多个主题级别组成, 每个主题级别之间由正斜杠(主题级别分隔符)分隔,如下图所示:
    这里写图片描述

    主题过滤器TopicFilter

      含有通配符的主题,目的是让客户端同时订阅多个主题。

    通配符

      当客户端订阅主题时,它可以使用消息发布到的确切主题,或者可以使用通配符同时订阅更多的主题。 通配符只能在订阅主题时使用,并且在发布消息时不允许使用。

    单级通配符+

      +表示主题中的单个级别通配符,如下图所示:
    这里写图片描述

    多级通配符#

      #可以涵盖任意数量的主题级别, 为了确定匹配的主题,需要多级通配符总为主题中的最后一个字符,并且确保它前面是正斜杠,如下图所示:
    这里写图片描述

    以$开始的主题

      以$号开始的每个主题都会被特殊对待,比如当订阅#时,这些以$开头的主题并不包含在订阅的内容中。这些主题被保留为MQTT代理服务器的内部特性。因此,客户端是不能向这些主题发布消息的。目前,broker所发布的主题格式还没有明确的的官方标准。一般的做法是用$SYS/ 打头,后面跟不同的格式。

    cs