Как преобразовать ответ http.get из CSV в JSON NodeJS
Запрос http.get возвращает файл csv.gz. После распаковки я хотел бы преобразовать его в JSON и загрузить в mongoDB. Как реализовать функцию преобразования в потоке?
Мой код следующий:
const download = (url, dest) => {
const request = https.get(url, function(response) {
const decompress = zlib.createGunzip();
const file = fs.createWriteStream('./downloads/'+ dest);
response.pipe(decompress).on('data', (chunk) => {
console.log(chunk)
})
.pipe(file);
});
}
CSV в JSON будет преобразован с использованием этого:
const csvToJson = (csv) => {
const [firstLine, ...lines] = csv.split('\n');
return lines.map((line) => firstLine.split(',').reduce(
(curr, next, index) => ({
...curr,
[next]: line.split(',')[index],
}),
{},
));
};
Телефонный код выглядит следующим образом:
linksToDownload.map((item) => {
if (item.value !== undefined) {
const URL = item.value;
const DEST = item.name + ".json"
download(URL, DEST);
}
})
Кроме того, почему nodemon перезапускается несколько раз? печатаетэкран консоли
Заранее спасибо за помощь