Mongo 文档展示了当 MongoClient 和服务器定义在同一模块中时如何设置连接池:
var express = require('express');
var mongodb = require('mongodb');
var app = express();
var MongoClient = require('mongodb').MongoClient;
var db;
// Initialize connection once
MongoClient.connect("mongodb://localhost:27017/integration_test", function(err, database) {
if(err) throw err;
db = database;
// Start the application after the database connection is ready
app.listen(3000);
console.log("Listening on port 3000");
});
// Reuse database object in request handlers
app.get("/", function(req, res) {
db.collection("replicaset_mongo_client_collection").find({}, function(err, docs) {
docs.each(function(err, doc) {
if(doc) {
console.log(doc);
}
else {
res.end();
}
});
});
});
当你有,比如说,一个app.js
设置服务器和api.js
定义了路线?
一种简单的解决方案是在 app.js 中编写一些简单的中间件,以通过请求变量将其传递到路由。
app.use(function(req, res, next) {
req.db = db;
next();
});
当然,您的所有路线都可以访问req
and res
,这样他们就可以通过req.db
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)