[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)