콘서트 데이터의 ATOM 피드를 소비하고이를 조금 더 소비하기 위해 JSON으로 출력하려고합니다.nodej를 사용하여 읽을 수있는 스트림을 유효한 JSON으로 변환하려면 어떻게해야합니까?
지금까지 나는 request을 사용하여 데이터를 얻었으며 feedparser을 분석하고이를 통해 원하는대로 작동하는 것으로 보입니다.
// data
var feed = 'http://mix.chimpfeedr.com/630a0-dcshows';
var wstream = fs.createWriteStream('data.json');
var req = request(feed);
var feedparser = new FeedParser({
addmeta: false
});
req.on('response', function(res) {
var stream = this;
if (res.statusCode != 200) return this.emit('error', new Error('Bad status code'));
stream.pipe(feedparser)
});
feedparser.on('readable', function() {
var stream = this;
var item;
// ... do some business work to get a `data` object
wstream.write(JSON.stringify(data) + ',');
});
이 이러한 데이터 객체의 연결된 목록은 말 그대로 파일을 작성 :
{
object1
}, {
object2
}, {
etc
},
이 멋지다하지만이 배열로 포장하고 싶습니다 내가 마지막 싶습니다 항목 뒤에 쉼표가 없습니다. 이 문제를 해킹 할 수있는 방법이있을 것이라고 확신하지만 스트림 접근 방식의 핵심 개념과 실제 상황을 놓치고 있다고 생각합니다.
제 질문은 : 어떻게 읽을 수있는 스트림 (XML)을 조작하고 올바른 JSON 배열을 출력합니까?