MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Transmita os resultados do MongoDB para a resposta do Express


O que você pode fazer é escrever explicitamente o início do array res.write("[") antes de solicitar o banco de dados, coloque um , , em cada objeto de string json e no final do stream escreva o final da matriz res.write("]") isso pode funcionar. Mas não é aconselhável!

Uma abordagem melhor será usar uma implementação de JSON.stringify streamable como json-stream-stringify
const JsonStreamStringify = require('json-stream-stringify');
app.get('/api/users', (req, res, next) => {
   const stream = db.collection('documents').find().stream();
   new JsonStreamStringify(stream).pipe(res);
);