csv? Как решали задачу?
зОчем
Тайна
nometa pls опиши проблему, в чём затруднения и тебе помогут решить задачу можно не одним способом
Парсили. json-2-csv https://attacomsian.com/blog/nodejs-convert-json-to-csv Ответ достаточно закрывает вопрос?
Спасибо. У меня возникает ошибка out of memory при парсинге 50мб+ файлов. Вот код import { APIGatewayProxyResult, APIGatewayProxyEvent } from 'aws-lambda'; import http from 'http'; import https from 'https'; import { pipeline } from 'stream'; import { isHttps } from './utils'; import { Transform as CsvTransform } from '@json2csv/node'; import flatten from './parsers/flatten'; // Function utilizes streams to read data from a url, transform it, and upload it to s3 export const lambdaHandler = async (event: APIGatewayProxyEvent): Promise<APIGatewayProxyResult> => { try { const data = typeof event === 'string' ? JSON.parse(event) : event; const url = data.message.extsrc; // const body = await streamResponse(url); const protocol = isHttps(url) ? https : http; const body = await new Promise((resolve, reject) => { protocol.get(url, (networkStream: http.IncomingMessage) => { pipeline( networkStream, new CsvTransform( { transforms: [flatten({ objects: true, arrays: true, separator: '__' })], }, { objectMode: true }, ), (error: any) => { if (error) { reject(error); } resolve('success'); }, ); }); }); const response = { statusCode: 200, body: JSON.stringify(body), }; return response; } catch (err) { console.log(err); return { statusCode: 500, body: JSON.stringify({ message: err, }), }; } };
А нужно каждый раз новый экземпляр трансформа?
Я не уверен как нужно, но я же не создаю каждый раз новый экземпляр?
А без objectMode? Или он тебе нужен?
Сейчас попробую)
Все равно память кончается и крашится
Обсуждают сегодня