【问题标题】:Cannot connect to MQTT broker(mosquitto) with Javascript Ionic无法使用 Javascript Ionic 连接到 MQTT 代理(蚊子)
【发布时间】:2016-06-06 04:23:09
【问题描述】:

我尝试将 MQTT 与 Ionic 框架绑定。尝试向代理发送 MQTT 消息(我正在发布)时,发生点击事件时,出现以下错误:

“AMQJS0011E 无效状态未连接......” “与 'ws://test.mosquitto.org:8080/mqtt' 的 WebSocket 连接失败:错误 >在 WebSocket 握手期间:net::ERR_CONNECTION_RESET”

请问有人可以帮我吗?我在任何地方都找不到解决方案。

我也尝试使用端口 1883,但问题仍然存在。

var App = angular.module("App",["ionic","ngWebSocket"]);

App.controller("Appctrl",["$scope","$log",Appctrl]);

function Appctrl($scope,$log,$websocket){

$scope.mqtt_on = function() {

   client = new Paho.MQTT.Client("test.mosquitto.org",    
   Number(8080),"zsrgdxrgdt");
   client.connect();
   message = new Paho.MQTT.Message("Hello");
   message.destinationName = "test/smit";
   client.send(message);
   alert("ON");
};

$scope.mqtt_off = function() {
   alert("Off");
`enter code here`};

};

【问题讨论】:

    标签: javascript ionic-framework mqtt paho


    【解决方案1】:

    Paho Javascript客户端是异步的,connect函数会在连接完成前返回

    所以在连接完成之前调用send

    connect 函数可以接受一个参数,该参数可以包含一个回调函数,以便在连接完成后调用。所以这样的事情应该可以工作

    client.connect({onSuccess: function(){
      message = new Paho.MQTT.Message("Hello");
      message.destinationName = "test/smit";
      client.send(message);
    }});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-19
      • 1970-01-01
      • 2017-03-14
      • 1970-01-01
      • 2021-12-27
      • 2017-01-20
      • 2020-06-01
      • 2020-04-03
      相关资源
      最近更新 更多