我正在尝试构建一个Tizen Web应用程序,该应用程序使用Paho MQTT JS库连接到MQTT代理。
但是每次我运行该应用程序时,都会不断出现以下错误:
Error: AMQJS0011E Invalid state already connected.
这是我的代码
/**
*
*/
var broker="broker.mqttdashboard.com";
var port=8000;
var client=new Paho.MQTT.Client(broker,port,"myWebClientID_"+parseInt(Math.random()*100,10));
client.onConnectionLost=function (response){
console.log("Connection Lost: ",response.errorMessage);
}
client.onMessageArrived=function(message){
console.log(message.destinationName, "--",message.payloadString);
}
var option={
timeout:3,
onSuccess: function(){
client.subscribe('/Aya',{qos:1});
console.log("Connected to broker");
var message=new Paho.MQTT.Message("Test Message");
message.destinationName="/Aya";
client.send(message);
},
onFailure:function(msg){
console.log("Connection Failed",msg.errorMessage);
}
}
function init(){
client.connect(option);
}
$(document).ready(function(){
console.log("Document ready");
init();
});
当我尝试在浏览器上运行该代码片段时,它可以正常工作。
答案 0 :(得分:0)
我意识到该错误与MQTT错误无关。
问题是我没有给应用程序适当的特权,即我没有在config.xml中添加应用程序访问Internet的权限,因此应用程序无法连接到代理。