使用 paho-mqtt 连接到 Solace (JavaScript)

Connecting to Solace using paho-mqtt (JavaScript)

我是 运行 一个示例安慰代理(使用命令 here)并尝试从 Web 浏览器连接到它。我已经成功地使用客户端库连接到它,但我知道应该可以使用 paho-mqtt 库连接到它。不幸的是,所有示例都是针对 Java 库的,它使用不同的连接 API。有没有人有直接调用 "mqtt.Connect" 并获得成功的 return 代码的示例?

Solace 完全支持 Eclipse Paho MQTT 库...问题是在该页面(新位置:https://solace.com/software/getting-started/)上快速入门并没有公开您需要的所有端口。不幸的是,Docker 需要在创建时定义的公开(已发布)端口(除非您在 Linux 机器上并且您使用 "host" 网络创建了 Docker 容器)。因此,如果您使用 Docker for Windows 或 Docker for Mac,则必须重新创建容器。

默认的 MQTT 非 TLS WebSockets 端口是 8000。(还有一大堆:https://docs.solace.com/Configuring-and-Managing/SW-Broker-Specific-Config/SW-Broker-Configuration-Defaults.htm)。所以你的容器创建命令将是这样的:

docker run -d -p 8000:8000 -p 8080:8080 -p 55555:55555 -p:80:80 --shm-size=2g --env username_admin_globalaccesslevel=admin --env username_admin_password=admin --name=solacePSPlusStandard solace/solace-pubsub-standard

这应该允许您的 Paho JS API 连接!也可以添加 1883(基于 TCP 的 MQTT)和 9000(REST 消息传递)端口,以防万一。