javascript - Writing MongoDB result to file using native Node.js driver -


i trying write results of mongodb query file using native node.js driver. code following (based on post: writing files in node.js):

var query = require('./queries.js'); var fs = require('fs');  var mongoclient = require('mongodb').mongoclient;  mongoclient.connect("mongodb://localhost:27017/test", function(err, db) {     if(err) { return console.dir(err); }      var buildscoll = db.collection('blah');      collection.aggregate(query.test, function(err, result) {         var jsonresult = json.stringify(result);         //console.log(jsonresult);          fs.writefile("test.json", jsonresult, function(err) {             if(err) {                 console.log(err);             } else {                 console.log("the file saved!");             }         });     });      collection.aggregate(query.next, function(err, result) {         var jsonresult = json.stringify(result);         //console.log(jsonresult);         db.close();     });  }); 

the file written, contents 'undefined.' printing result console works though.

your code not checking err on aggregate callback.

you getting mongo error , result undefined in case...

other thing suspect getting multiple callbacks -- each 1 of them creates new files, erasing content.

try using fs.appendfile instead of fs.writefile , see if getting expected data (plus unwanted undefined)


Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -