我在Google云服务器中设置并运行了我的mongo数据库。 我在服务器中有我的nodejs代码,它试图连接到数据库并将数据插入到集合中。但这似乎并没有起作用。数据未插入。 它不会抛出任何特定的错误消息。 当我在mongoShell中手动创建数据库并将数据插入集合时,将插入数据。 我的代码也在我的系统中本地连接到mongo DB并插入仍然可以正常工作的数据。
您觉得这里有什么问题? 下面是连接到mongo DB和插入数据的代码片段。
function insertDataInMongo(a) {
var deferred = q.defer();
var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://localhost/MyMongoDB’;
var token = a[1];
MongoClient.connect(url,function (err,db) {
if(err) deferred.reject(new Error(err))
console.log("connected for insert");
var apiData = JSON.parse(a[0]);
if(apiData.data){
db.collection(‘TestCollection1’).update(apiData.data, {upsert:true});
console.log(“Data inserted in TestCollection1“);
}
else {
db.collection(‘TestCollection2’).update(apiData, {upsert:true});
console.log(“TestCollection2”);
}
deferred.resolve(token);
});
return deferred.promise;
}