0

[using node.js and mongodb]

Im getting an error on adminDb variable as follows: adminDb is not defined; however, I defined it as db.admin() in JS for Mongodb usage. This is basic code, but for some reason it won't work on my server/database. Also, I'm using 8 databases that each have a few collections.


server.js code:

    const mongoClient = require('mongodb').MongoClient;
    const mongoDBurl = process.env.mongo_url || "mongodb://10.119.224.149:27017/logServer";
    var adminDb;

    logServer.post('/test', (req,res) => { //Postman calls here
        console.log('starting test');
        res.status(200).send('hello, I am Log test');

        adminDb.listDatabases(function(err, dbs) { //ERROR HERE **
        test.equal(null, err);
        test.ok(dbs.databases.length > 0);

        db.close();
      });
    });

mongoClient.connect(mongoDBurl, function(error, db){ //to connect to mongodb 
    if (error) {
        console.log("Failed to connect to db. Restart sever.");
        return;
    } 
    console.log("Connected to mongodb :" + mongoDBurl);
     adminDb = db.admin();
});

error msg:

 ReferenceError: adminDb is not defined
     at /app/server.js:469:11
     at connectCallback (/app/node_modules/mongodb/lib/mongo_client.js:507:5)
    at /app/node_modules/mongodb/lib/mongo_client.js:426:11
     at _combinedTickCallback (internal/process/next_tick.js:67:7)
    at process._tickCallback (internal/process/next_tick.js:98:9)
BenSmith
  • 429
  • 1
  • 6
  • 14

0 Answers0