2016-01-25 206 views
0

這是我的NodeJS程序它給一個錯誤:無法連接到mongoDB服務器。錯誤:[錯誤:連接關閉]

var mongodb = require('mongodb'); 
var server = Server = require('mongodb').Server; 


var MongoClient = mongodb.MongoClient; 

var url = 'mongodb://localhost:27017/prisync_mamy'; 

MongoClient.connect(url, function (err, db) { 
    if (err) { 
    console.log('Unable to connect to the mongoDB server. Error:', err); 
    } else { 
    console.log('Connection established to', url); 

    var collection = db.collection('urlAnalysis_mamy'); 
var cursor = collection.find({channel_name:'urlAnalysis_mamy'}); 



cursor.each(function (err, doc) { 
    if (err) { 
    console.log(err); 
    } else { 
    console.log('Fetched:', doc); 
     } 
    }); 
    } 
}); 

Error: [Error: connection closed]

但是當我在終端上鍵入蒙戈它運行良好。

+0

這些代碼適用於我...任何其他錯誤? – zangw

+0

沒有任何其他錯誤。 – YAM

+0

你的機器上是否安裝了MongoDB服務器,並且它正在運行?你通常可以在終端輸入'mongo'來測試。 – xaviert

回答

0

在我的情況下,問題是新服務器和mongdb npm模塊文件的文件安全性,所以我不得不使用「chown」命令來擁有所有文件,然後運行「npm install」,之後MongoDB客戶端正常工作。

0

從運行代碼的例外是

TypeError: db.collection is not a function 

,並且告訴你收集關鍵字在變量分貝不存在。看看mongodb npm page,你應該這樣做:

var mongodb = require('mongodb'); 
var server = Server = require('mongodb').Server; 
var MongoClient = mongodb.MongoClient; 

var url = 'mongodb://localhost:27017/prisync_mamy'; 

// Use connect method to connect to the server 
MongoClient.connect(url, function (err, client) { 
    console.log("Connected successfully to server"); 

    const db = client.db('prisync_mamy'); 

    ... 
}); 
相關問題