Тип потока и результат (MySQL)

#mysql #typeorm

Вопрос:

Кто-нибудь мог передать результат из запроса typeorm и передать его в поток записи ?

вот что я делаю inputStream.pipe(jsonexport()).pipe(wStreamCSV)

Входной поток-это поток чтения из typeorm, и я преобразую его в CSV и записываю в wStreamCSV. Все это работает, если я сначала создам файл JSON из выходных данных запроса, а затем прочитаю его.

Я получаю эту ошибку:

 TypeError [ERR_INVALID_ARG_TYPE]: The "chunk" argument must be of type string or an instance of Buffer or Uint8Array. Received an instance of RowDataPacket  

Об этой функции имеется очень ограниченная документация stream()

-Джени

Ответ №1:

Я смог это понять

Вам нужно запустить поток чтения через поток преобразования, чтобы упорядочить возвращаемый объект RowDataPacket. Затем вы можете передать его в поток записи или передать непосредственно в http-ответ (как это делаю я).

 const transform = new Transform({  objectMode: true,  transform(chunk, encoding, callback) {  this.push(JSON.stringify(Object.assign({}, chunk)));  callback();  }  });  

inputStream.pipe(transform).pipe(jsonexport())