我努力使我的MQTT客户端在我的应用程序内工作。经纪人由CloudMQTT提供。MQTT JavaScript客户端没有连接(错误的协议?)
当试图在NodeJS中运行以下代码时,客户端正确连接到MQTT;
var mqtt = require('mqtt');
var client = mqtt.connect(
"mqtt://m20.cloudmqtt.com",
{
port: 11212,
username: "XXXXXXXX",
password: "XXXXXXXX"
}
);
client.on('connect', function() {
console.log('connected');
});
然而,当我运行相同的代码(不要求当然)使用the Bower package前端,客户端无法连接。我也尝试了其他MQTT浏览器JS包。我更喜欢MQTT.js而不是Paho,因为我想在一个连接的客户端上使用多个订阅。
如果console.log(client);
,NodeJS使用protocol: 'mqtt'
和protocolId: 'MQTT'
。前端使用protocol: 'ws'
和protocolId: 'MQTT'
。这可能是问题吗?将这些选项添加到mqtt.connect不起作用。
我不确定您对PAHO客户端的多个订阅意味着什么。您可以使用PAHO客户端订阅多个主题 – hardillb