![](/img/trans.png)
[英]How can i make a new single json object by extracting particular fields from realtime json data using node.js
[英]how to publish realtime streaming json data received from a URL over mqtt using node.js
我有以下代码可以接收来自url的数据并打印json格式的数据。我想使用node.js将相同的数据发布到mqtt,是否有相同的示例代码?
`var request = require('request')
var JSONStream = require('JSONStream')
`var es = require('event-stream')`
`request({url: 'http://isaacs.couchone.com/registry/_all_docs'})
`.pipe(JSONStream.parse('rows.*'))
.pipe(es.mapSync(function (data) {
console.log(data);
console.error(data)
return data
}))
只需将node.js库用于mqtt,例如MQTT.js https://github.com/adamvr/MQTT.js
您也可以通过安装mosca https://github.com/mcollina/mosca在node.js中运行自己的多协议代理
您可以使用mqtt节点库MQTT.js
您当前的代码如下所示:
var request = require('request');
var JSONStream = require('JSONStream');
var es = require('event-stream');
var mqtt = require('mqtt');
request({url: 'http://isaacs.couchone.com/registry/_all_docs'})
.pipe(JSONStream.parse('rows.*'))
.pipe(es.mapSync(function (data) {
console.log(data);
console.error(data);
//MQTT publish starts here
var client = mqtt.createClient(1883, 'localhost');
client.publish('demoTopic', JSON.stringify(data));
client.end();
return data;
}))
上面的代码假定代理在端口1883上的本地计算机上运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.