sql >> Databáze >  >> NoSQL >> MongoDB

Streamujte výsledky MongoDB do expresní odpovědi

Co můžete udělat, je napsat explicitně začátek pole res.write("[") před vyžádáním databáze vložte , , na každý stringified objekt json a na konec streamu napište konec pole res.write("]") tohle může fungovat. To se ale nedoporučuje!

Lepším přístupem bude použít streamovatelnou implementaci JSON.stringify, jako je 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);
);



  1. Používám příslib node.js pro ověření, zda uživatelské jméno existuje v db nebo ne

  2. Node.js – relace nepřetrvává prostřednictvím res.redirect()

  3. Sdílení připojení nativního ovladače Node.js Mongodb

  4. Pokud je Redis single Threaded, jak může být tak rychlý?