【发布时间】:2019-01-01 10:22:23
【问题描述】:
我正在尝试在 mongo db 上运行查找查询,我想在 openwhisk 操作中执行此操作。我用 nodejs 做同样的事情并且工作得很好,但是在 openwhisk 我没有得到任何结果。我想它必须与javascript的异步执行有关。但是我在这个领域真的很新,我正在努力寻找解决方案。有什么建议?我有工作的 nodejs 代码。
function main(){
var mongodb = require('mongodb');
var MongoClient = require('mongodb').MongoClient;
MongoClient.connect('mongodb://172.29.91.113:27017/yelp', function(err, db) {
if (err) throw err;
var dbo = db.db("yelp");
var collection = dbo.collection("Review");
var a = [];
function queryCollection(collection, callback){
collection.find({stars:5}).limit(100).toArray(function(err, result) {
if (err) {
console.log(err);
}
a = result;
callback();
db.close();
})
}
queryCollection(collection, function(){
return a;
});
})
}
【问题讨论】:
-
我看到您的查询存在问题。您正在尝试在 Openwhisk 中建立一个 localhost 数据库连接,如果未在本地部署,则 openwhisk 可能无法访问该连接。您可以在这里发布您的 Openwhisk 日志吗?
-
这是本地的,但我已经解决了这个问题。我也没有日志。我用 vagrant 在本地运行 openwhisk。
标签: javascript mongodb asynchronous openwhisk