Nodejs使用MQTT做客户端订阅与发布,以下为示例代码
var mqtt = require('mqtt');
var url="mqtt://"+myconfig.msgCenter.host+":"+myconfig.msgCenter.port;
var options={
username:myconfig.msgCenter.username,
password:myconfig.msgCenter.password,
clientId:'Nodejs-ed16ef77-5cf2-4e5c-b511-1af14451df58'};
var client=mqtt.connect(url,options);
client.on('message', function (topic, message) {
var msg=message.toString();
var obj={};
try{
var obj=JSON.parse(msg);
myconfig.debugInfo(topic,msg);
}
catch(e){
console.log(topic,msg);
}
});
var topiclist=[];
for (var item in companyList){
topiclist.push("/topic/MSGCenter/"+companyList[item]);
}
client.subscribe(topiclist);
以上代码实现业务代码与配置代码分离,一次性订阅多个消息主题
MQTT.js官网: https://www.npmjs.com/package/mqtt