[英]nodejs adding mongo connection to global
我在服務器啟動時將mongo連接添加到我的全局obj以從任何文件訪問它
// app.js
mClient.connect(mongoUrl, function(err, db) {
global.mongo = db;
});
並像這樣使用它
// store.js
global.mongo.collection(thisColl, function(err, collection) {
if (err) return self.emit("error", "collection not found");
collection.find(query, select).toArray(function(err, stores) {
if (err || !stores) return self.emit("error", "result not found");
return self.emit("done", stores);
});
});
但有時我得到的錯誤會獨自解決,我不知道如何
// Error
{"code":"InternalError","message":"Cannot call method 'collection' of undefined"}
我這樣做是因為它不會在每個請求上打開/關閉連接
我設法使它起作用,也許不是更好的方法,但是可行
// Create MongoDB connection
mClient.connect(mongoUrl, function(err, db) {
global.mongo = db;
// Start HTTP server
server.listen(4000, function() {
console.log("%s listening at %s", server.name, server.url);
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.