iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 8
0
IoT

簡簡單單的MQTT入門系列 第 8

Topic Filter

  • 分享至 

  • xImage
  •  

訂閱的Topic Filter可以包含特殊的萬用字元,讓客戶端可以一次訂閱多個主題。
有多個階層一樣使用『/』區隔。
https://ithelp.ithome.com.tw/upload/images/20190915/20011273Cs24mriM9n.jpg
『#』多層萬用字元:可以匹配主題中任意數量的階層。多層萬用字元代表父階層和任意子階層。它可以單獨出現或出現在分隔符號後面,不管怎樣它只能是Topic Filter最後一個字元。
以上圖為例,如果客戶端訂閱主題『台灣/#』,它會收到以下主題發佈的訊息:

  • 台灣/太魯閣國家公園/長春祠/溫度
  • 台灣/太魯閣國家公園/武嶺/濕度
  • 台灣/太魯閣國家公園/武嶺/溫度
  • 台灣/太魯閣國家公園/長春祠/濕度
    另外『#』是有效的,會收到所有應用的訊息;『台灣/#/溫度』是無效的。

『+』單層萬用字元:可以匹配主題中一層的階層。
在Topic Filter的任意階層都可以使用,包含第一層和最後一層。
使用時必須是單獨的階層,也就是『台灣/+/濕度』是有效的而『台灣/+國家公園/濕度』是無效的。
在Topic Filter可以出現在多個階層,也可以和『#』一起使用。


上一篇
Topic Name
下一篇
Topic Name、Topic Filter的Java範例
系列文
簡簡單單的MQTT入門23
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言