Mosquitto: WebSockets
如何使用 WebSockets 連接到 MQTT
👋 歡迎來到 Stackhero 文件!
Stackhero 提供即用型 Mosquitto MQTT cloud 解決方案,帶來多項優勢,包括:
- 無限的消息交換和傳輸。
- 通過外部 API 進行 無限 的設備認證。
- 在主題、用戶和操作上提供 高級 ACLs。
- 使用 HTTPS 保護的 可自訂域名(例如,https://mqtt.your-company.com)。
- 只需點擊即可輕鬆 更新。
- 由 專用私有 VM 提供的最佳 性能 和強大 安全性。
節省時間 並 簡化您的生活:只需 5 分鐘 即可嘗試 Stackhero 的 Mosquitto MQTT cloud hosting 解決方案!
您有兩種主要方式可以連接到 Mosquitto:原生的 MQTT 協議或 WebSockets。
MQTT 協議以其輕量級設計廣受認可,非常適合 IoT 裝置及資源有限的環境。不過,大多數網頁瀏覽器並不支援直接的 MQTT 連線。這時 WebSockets 就派上用場了,因為它允許您透過 WebSocket 連線來執行 MQTT,讓您可以從瀏覽器端應用程式與 MQTT 伺服器互動。
要開始使用 WebSockets,只需在 Stackhero 控制台啟用「WebSocket 支援」選項。啟用後,您只需將您的 client 指向 WebSocket URL:wss://<XXXXXX>.stackhero-network.com:443。這個 URL 取代了標準的 MQTT 安全連線網址,例如:mqtts://<XXXXXX>.stackhero-network.com。
選擇 MQTT 函式庫
如果您的應用程式是用 JavaScript 撰寫的,建議您可以參考 MQTT.js 函式庫。這是一個彈性很高的選擇,既可在 Node.js 環境下運作,也能直接在瀏覽器端使用。相關文件與原始碼可在這裡找到:https://github.com/mqttjs/MQTT.js。
範例:使用 WebSockets 連接到 MQTT
您可以在這個範例 repository 中找到如何使用 WebSockets 將網頁應用程式連接到 MQTT 伺服器的實作範例:https://github.com/stackhero-io/mqttWebSocketGettingStarted。
在測試這個範例時,請記得將 src/index.html 檔案中的 url、username 和 password 更新為您自己的伺服器資訊。
MQTT WebSocket 範例
請記得在 Stackhero 控制台啟用 WebSocket 支援後再進行操作。