MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Iterazione seriale su un cursore mongodb (in attesa di richiamate prima di passare al documento successivo)

Se non vuoi caricare tutti i risultati in memoria usando toArray, puoi scorrere usando il cursore con qualcosa di simile al seguente.

myCollection.find({}, function(err, resultCursor) {
  function processItem(err, item) {
    if(item === null) {
      return; // All done!
    }

    externalAsyncFunction(item, function(err) {
      resultCursor.nextObject(processItem);
    });

  }

  resultCursor.nextObject(processItem);
}