我將MongoDB添加到我的Express.js節點網絡應用程序中。這是我走到這一步:在Node web應用程序中,您是否爲每個HTTP請求打開一個MongoDB連接?
// in app.js
var mongodb = require('mongodb');
var mongourl = /* … */;
// These are just examples:
app.get('/write', function (req, res) {
mongodb.connect(mongourl, function (err, db) {
db.collection('Users', function (err, coll) {
coll.insert(/* stuff */, function (err) {
res.send(200, 'Done.');
});
});
});
});
app.get('/read', function (req, res) {
mongodb.connect(mongourl, function (err, db) {
db.collection('Users', function (err, coll) {
coll.find({}, function (err, cursor) {
cursor.toArray(function (err, items) {
res.send(200, items);
});
});
});
});
});
假設我想用默認mongodb driver堅持(現在):
是這種模式嗎?我是否必須在執行數據庫操作的每條不同路由中打開到數據庫的新連接?
如果模式是正確的,那麼我該如何處理在這裏進行的明顯的代碼重複?顯然,就目前而言,代碼是不可接受的。
這將幫助你。 https://stackoverflow.com/questions/38485575/best-way-to-connect-to-mongodb-using-node –