connecting nodejs and mongodb code example
Example 1: how to connect local mongoDb to node
//with mongoose
const mongoose = require('mongoose');
mongoose.connect(
mongoURI,
{
useNewUrlParser: true,
useUnifiedTopology: true
},
(err) => {
if (err) console.log(err);
app.listen(3000);
}
);
/********************************************************************/
// with mongodb lib
const mongodb = require('mongodb');
const MongoClient = mongodb.MongoClient;
let _db;
// you can replace test with any database name that you want
const mongoConnect = (cb) => {
MongoClient.connect('mongodb://127.0.0.1:27017/test')
.then((client) => {
_db = client.db();
cb()
console.log('Connected to MongoDb');
}).catch((err) => {
console.log(err);
});
}
//after your server started you can use getDb to access mongo Database
const getDb = () => {
if (_db) return _db;
throw 'No database found';
}
exports.mongoConnect = mongoConnect;
exports.getDb = getDb;
Example 2: how to connect mongodb with node js
async function main(){
/**
* Connection URI. Update <username>, <password>, and <your-cluster-url> to reflect your cluster.
* See https://docs.mongodb.com/ecosystem/drivers/node/ for more details
*/
const uri = "mongodb+srv://<username>:<password>@<your-cluster-url>/test?retryWrites=true&w=majority";
const client = new MongoClient(uri);
try {
// Connect to the MongoDB cluster
await client.connect();
// Make the appropriate DB calls
await listDatabases(client);
} catch (e) {
console.error(e);
} finally {
await client.close();
}
}
main().catch(console.error);
Example 3: mongodb connection node
// create folder config and create two files below mentioned...
// default.json
{
"mongoURI": "add_your_key =_here"
}
/// db.js
const mongoose = require("mongoose");
const config = require("config");
const db = config.get("mongoURI");
const connectDB = async () => {
try {
await mongoose.connect(db, {
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false,
});
console.log("MongoDB connected...");
} catch (err) {
console.log(err.message);
process.exit(1);
}
};
// dependencies
npm i express bcryptjs jsonwebtoken config express-validator mongoose
// dev-dependencies
npm i -D nodemon concurrently