gpt4 book ai didi

javascript - 我无法连接到 javascript mqtt 服务器

转载 作者:行者123 更新时间:2023-12-01 15:44:57 25 4
gpt4 key购买 nike

WebSocket 错误:网络错误 12031,与服务器的连接已重置

我想从 UI 订阅 mqtt 消息。我正在使用以下代码。我的机器上运行着 mosquitto 代理,所以我将 url 作为我的 IP,它正在监听端口号 1883,我提供了一些随机的客户端 ID

<!DOCTYPE html>
<html lang="en">

<head></head>

<body>
<script src="../bower_components/jquery/dist/jquery.min.js"></script>
<script src="../bower_components/jquery/dist/jquery.js"></script>
<script src="../paho.javascript-1.0.1/mqttws31-min.js"></script>
<script src="../paho.javascript-1.0.1/mqttws31.js"></script>
<script src="../js/browserMqtt.js"></script>
<script>

// Create a client instance
client = new Paho.MQTT.Client("10.9.177.110", 1883, "100");

// set callback handlers
client.onConnectionLost = onConnectionLost;
client.onMessageArrived = onMessageArrived;

// connect the client
client.connect({onSuccess:onConnect});

// called when the client connects
function onConnect() {
console.log("onConnect");
client.subscribe("/World");
message = new Paho.MQTT.Message("Hello");
message.destinationName = "/World";
client.send(message);
}

// called when the client loses its connection
function onConnectionLost(responseObject) {
if (responseObject.errorCode !== 0) {
console.log("onConnectionLost:"+responseObject.errorMessage);
}
}

// called when a message arrives
function onMessageArrived(message) {
console.log("onMessageArrived:"+message.payloadString);
}
</script>
</body>
</html>

最佳答案

您要连接到哪种类型的代理?除了 IBM MessageSight 设备,我不知道有任何其他代理可以为本地 MQTT 和 MQTT 通过 Websocket 共享相同的端口。

由于端口 1883 传统上用于本地 MQTT,您是否记得通过 Websockets 为 MQTT 添加新的监听器?

假设您使用的是 mosquitto 1.4.x,那么您需要在配置文件中添加如下内容:

listerner 1884
protocol websockets

这将在端口 1884 上添加一个 Websocket 监听器

关于javascript - 我无法连接到 javascript mqtt 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31157805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com