首页 > 解决方案 > 如何在浏览器客户端中通过 websockets 实现 mqtt?

问题描述

我正在尝试使用Paho JS 库在我的 Web 应用程序中通过 websocket 使用 mqtt来实现通知。我需要使用持久连接(接收任何待处理的消息),因此必须使用唯一的客户端 ID。

问题 1:多个选项卡充当 mqtt 客户端,使用相同的客户端 ID,因此在无限循环中断开和连接(因为我已将重新连接设置为 true)

我使用 Shared Worker 解决了上述问题,它现在只为所有选项卡使用一个连接,这很棒。但现在我遇到了另一个问题。

问题 2:当我在两个不同的浏览器(例如 Chrome 和 Firefox)中打开我的应用程序时,我得到了不同的共享工作者,因此两个客户端再次使用相同的 clientId 导致连接/断开循环。

任何建议将不胜感激。

标签: javascriptwebsocketmqttweb-notificationsshared-worker

解决方案


推荐阅读