Я очень новичок в mqtt, и недавно мне было поручено установить соединение с помощью брокера mqtt. У меня все настройки mqtt настроены, но я не могу подключиться. Я получаю эту ошибку каждый раз, когда функция connect () вызывается Connection failed: AMQJSC0001E Connect timed out.
. Я запускаю ее через Xampp.
<html>
<head>
<script>
var options = {
timeout: 3,
userName: "myusername",
password: "mypassword",
onSuccess: function () {
alert("Connected");
console.info("mqtt connected");
//Connection succeeded; subscribe to our topic
client.subscribe(MQTTsubTopic, {qos: 0});
},
onFailure: function (message) {
alert("Connection failed: " + message.errorMessage);
console.info("connection failed");
}
};
//Create MQTT client here
var client = new Paho.MQTT.Client(MQTTbroker, MQTTport, "myclientid_" + parseInt(Math.random() * 100, 10));
client.onConnectionLost = function (responseObject) {
alert("connection lost: " + responseObject.errorMessage);
console.info("connection lost");
/* Connect to MQTT broker */
client.connect(options);
};
</script>
</head>
</html>
Вот информация о моем брокере MQTT и порте, которую я определил в другом файле js. «000.000.00.00» не настоящий брокер. Что могло быть не так при установлении моего соединения?
var MQTTbroker = '000.000.00.00';
var MQTTport = 9001;
С другой стороны, я попытался подключиться к образцу брокера broker.emqx.io
с портом 8083
, и он подключен. Я получил пример от эта ссылка
Вы правы, я только что проверил, порт 9001 заблокирован. Но как его разблокировать? Извините, я новичок в этом и ценю ваши ответы
Это вопрос для Суперпользователь, а не для переполнения стека.
Вы на 100% уверены, что браузер, в котором он запущен, может связаться с брокером, и что на нем не запущен брандмауэр, блокирующий доступ к порту 9001?