gpt4 book ai didi

javascript - 在 MQTT 客户端 "Uncaught ReferenceError: Messaging is not defined"

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:14:32 25 4
gpt4 key购买 nike

我正在尝试基于简单的 websocket 的 MQTT 客户端,并在 Chrome 控制台上出现“Uncaught ReferenceError: Messaging is not defined”错误。

<!DOCTYPE html>
<head>

<head>
<script src="mqttws31.js" type="text/javascript" charset="utf-8" async defer></script>


<script type="text/javascript">

var client;
var form = document.getElementById("tutorial");

function doConnect() {
var wsbroker = "test.mosquitto.org"; //mqtt websocket enabled broker
var wsport = 80 // port for above

var client = new Messaging.Client(wsbroker, wsport,
"myclientid_" + parseInt(Math.random() * 100, 10));
client.onConnect = onConnect;
client.onMessageArrived = onMessageArrived;
client.onConnectionLost = onConnectionLost;
client.connect({onSuccess:onConnect});
}

function doSubscribe() {
client.subscribe("/World");
}

function doSend() {
message = new Messaging.Message("Hello");
message.destinationName = "/World";
client.send(message);
}

function doDisconnect() {
client.disconnect();
}

// Web Messaging API callbacks

function onConnect() {
var form = document.getElementById("example");
form.connected.checked= true;
}

function onConnectionLost(responseObject) {
var form = document.getElementById("example");
form.connected.checked= false;
if (responseObject.errorCode !== 0)
alert(client.clientId+"\n"+responseObject.errorCode);
}

function onMessageArrived(message) {
var form = document.getElementById("example");
form.receiveMsg.value = message.payloadString;
}

</script>
</head>

<body>
<h1>Example Web Messaging web page.</h1>
<form id="example">
<fieldset>
<legend id="Connect" > Connect </legend>
Make a connection to the server, and set up a call back used if a
message arrives for this client.
<br>
<input type="button" value="Connect" onClick="doConnect(this.form)" name="Connect"/>
<input type="checkbox" name="connected" disabled="disabled"/>
</fieldset>

<fieldset>
<legend id="Subscribe" > Subscribe </legend>
Make a subscription to topic "/World".
<br> <input type="button" value="Subscribe" onClick="doSubscribe(this.form)"/>
</fieldset>

<fieldset>
<legend id="Send" > Send </legend>
Create a Message object containing the word "Hello" and then publish it at
the server.
<br>
<input type="button" value="Send" onClick="doSend(this.form)"/>
</fieldset>

<fieldset>
<legend id="Receive" > Receive </legend>
A copy of the published Message is received in the callback we created earlier.
<textarea name="receiveMsg" rows="1" cols="40" disabled="disabled"></textarea>
</fieldset>

<fieldset>
<legend id="Disconnect" > Disconnect </legend>
Now disconnect this client from the server.
<br> <input type="button" value="Disconnect" onClick="doDisconnect()"/>
</fieldset>
</form>
</body>
</html -->

错误在线“var client = new Messaging.Client(wsbroker, wsport,”

错误 os “Uncaught ReferenceError: Messaging is not defined”

java脚本来自http://git.eclipse.org/c/paho/org.eclipse.paho.mqtt.javascript.git/tree/src/mqttws31.js

请提出任何解决方案...

最佳答案

您使用的是旧示例,包名称已更改,不再是 Messaging,它应该是:

...
var client = new Paho.MQTT.Client(wsbroker, wsport,
"myclientid_" + parseInt(Math.random() * 100, 10));
...

编辑:test.mosquitto.org 的端口号也是 8080 而不是 80

关于javascript - 在 MQTT 客户端 "Uncaught ReferenceError: Messaging is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27740003/

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