我使用Meteor创建了一个站点,它可以在localhost上完美运行,但不能在服务器上运行。我的mongoDB中有一个集合,该集合是使用python脚本填充的,此脚本同时填充了本地服务器mongoDB。我可以看到它是使用数据库管理器填充的。但是,在我的本地主机中的调用将打印一个包含文档的数组,服务器上网站上的相同代码/操作将返回一个空数组。
我真的不知道可能是什么问题,有人可以帮助我解决这个问题吗?
python-script,与服务器上的本地脚本相同!
def write_data(documents, collection_name):
# when running locally
#client = pymongo.MongoClient("localhost", 3001)
#db = client.meteor
# on the server
client = MongoClient(mongoURL, username=****,
password=****)
db = client.mercurius
if collection_name in db.collection_names():
collection = db[collection_name]
collection.drop()
new_collection = db[collection_name]
new_collection.insert_many(documents)
cursor = new_collection.find({})
for document in cursor:
print(document)
我使用mup来设置容器,它可用于其他事情,我的代码。 mup中的mongoURL与上面的脚本相同。
Meteor.call( 'getDBinfo', function(err, response){
console.log(response);
console.log(err);
});
上述流星调用在本地主机上返回完整数组(53个文档),在服务器上为空。两者都有未定义的错误。