Javascript 使用Paho连接到MQTT服务器
我正在尝试使用Paho的JavaScript库连接到MQTT服务器。我刚刚在泛美卫生组织网站上使用了这个例子。即:Javascript 使用Paho连接到MQTT服务器,javascript,mqtt,Javascript,Mqtt,我正在尝试使用Paho的JavaScript库连接到MQTT服务器。我刚刚在泛美卫生组织网站上使用了这个例子。即: function onConnect() { console.log("onConnect"); client.subscribe("harleyRowland/myTopic"); message = new Paho.MQTT.Message("Hello"); message.destinationName = "harleyRowland/myTopic";
function onConnect() {
console.log("onConnect");
client.subscribe("harleyRowland/myTopic");
message = new Paho.MQTT.Message("Hello");
message.destinationName = "harleyRowland/myTopic";
client.send(message);
}
onConnect();
在Safari上,我遇到以下错误:
错误:AMQJS0011E无效状态未连接
在Chrome上,我得到了以下错误以及上面的错误:
到“ws://mosquitoServer.co.uk:1883/mqtt”的WebSocket连接失败:
WebSocket握手期间出错:网络::错误\u连接\u重置
我需要使用蚊子服务器来完成这项工作。可以使用JavaScript吗?如果这是不可能的,有没有其他的网络技术我可以使用 您需要在MOSQUITO设置中添加websockets侦听器。您可以通过向mosquitto.conf添加如下内容来实现
listener 1884
protocol websockets
这将通过端口1884(而不是1883)上的WebSocket侦听MQTT,因为您不能使用MOSQUITO在同一个套接字上同时运行这两个端口
您还需要运行比1.4更新的mosquitto,而不是在Windows上运行,除非您自己编译它您可以在Windows上使用WebSocket,您只需自己编译即可。我无法向蚊子服务器添加功能(它不属于我)。这是否使通过web与MQTT进行交互变得不可能?如果代理没有为WebSocket配置,那么paho代码将无法与其进行通信。可以通过Websocket网桥运行原始MQTT到MQTT,但您必须在某个地方托管它