
我嘗試像這樣發布訊息:
mosquitto_pub -h 7.18.13.43 -t "Home/#" -m "test bulb1" -v -u user1
-P md
CError: Invalid publish topic 'Home/#', does it contain '+' or '#'?
mosquitto_pub -h 7.18.13.43 -t # -m "test bulb1" -u user1 -P md
Error: Invalid publish topic '#', does it contain '+' or '#'?
我不明白為什麼我會收到這些錯誤......?
答案1
我不是專家,但您肯定應該用實際的主題名稱替換“#”。
如果我理解正確的話,# 是一個通配符,這在訂閱但不發佈時有意義。
這也與您收到的錯誤一致。
答案2
根據我的經驗,我知道 # 是一個 MQTT 通配符,這意味著它後面的所有主題(主題層次結構層級)也應該包含在內。實際上,訂閱主題支援通配符,而不是發布主題。當我遇到同樣的問題時,我很幸運地想出了這個解決方案。所以,我真的希望它對你有幫助。無論如何,如果您仍然遇到相同的問題,請檢查MQTT 發布訂閱了解更多。我會等待你的回复,夥計。