我想做一个简单的事情来做一个openwhisk动作:在mongodb中执行一个find查询并返回结果。但是,由于我是这些技术的新手,所以找不到解决方案,因为我始终没有收到任何结果。我已将openwhisk与mongodb正确连接。任何人都可以提供代码示例帮助吗?
到目前为止,我的代码是:
function main(){
var MongoClient = require('mongodb').MongoClient
var url = 'mongodb://192.168.1.14:27017/'
MongoClient.connect(url, (err, db) => {
db.db('yelp').collection('Review').find({stars:5}).limit(100).toArray().then((docs) => {
return docs;
db.close();
}).catch((err) => {
console.log(err.stack);
});
})
}
因此,我收到null。有什么建议吗?
答案 0 :(得分:1)
您需要使用Promises或async / await之类的方法来处理异步,并等待直到从数据库返回响应来结束操作执行
有关如何在Node.js中的mongodb客户端中使用Promise的问题,请参见 How to use MongoDB with promises in Node.js?