Prøv scriptet med én forbindelse til databasen, når serveren starter, og alt kører fra den forbindelse.
Så du har kun én MongoClient.connect
når appen lytter i stedet for hver forespørgsel
const url = "mongodb://adminMongo:[email protected]:12345";
// outline the options for mongo db connection
const mongoOptions = { useUnifiedTopology: true };
// create a new mongo client to connect to the database
const client = new MongoClient(url, mongoOptions);
// connect to mongodb database on start of server
client.connect(function(err) {
if (err) {
console.log('Unable to connect to the MongoDB database');
// exit the process if a connection to the database cannot be made
process.exit(1);
} else {
// create local host server
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
}
});
Når du så vil forespørge databasen, behøver du ikke åbne en ny forbindelse
for eksempel. denne funktion burde fungere uden behov for forbindelse
function dbInsert(dataCategory, dataTitle, dataStart, dataEnd, dataInterval){
var doc = {data_category:dataCategory,
data_title:dataTitle,
data_start: dataStart,
data_end: dataEnd,
data_interval: dataInterval};
// insert document to 'users' collection using insertOne
statsDB.collection('stats').insertOne(doc, function(err, res) {
if(err) throw err;
console.log("Document inserted");
});
}