这是我的nodejs程序,它给出了一个错误:
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);
}
});
}
});
错误:[错误:连接关闭]
但是当我在终端上键入mongo时它运行正常。
答案 0 :(得分:0)
在我的情况下,问题是新服务器和mongdb npm模块文件的文件安全性,所以我必须使用“chown”命令拥有所有文件,然后运行“npm install”,之后MongoDB客户端正常工作。
答案 1 :(得分:0)
运行代码的例外是
TypeError: db.collection is not a function
并告诉您变量 db 中不存在集合关键字。查看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');
...
});