首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HapiJS路由问题

HapiJS路由问题
EN

Stack Overflow用户
提问于 2017-12-02 20:48:31
回答 1查看 137关注 0票数 0

我有一个这样的routes.js:

代码语言:javascript
复制
server.route({
   method: 'GET',
   path: '/marvel/universal/verify/{serial?}',
    handler: function(request, h) {
    let obj = { "test": "a" };
    Db.find('marvel', obj, 1, function(result) {

    });
        return h.response(result);
    }
});

并使用用于节点的正式MongoDB包连接到MongoDB上的DB模块如下所示:

代码语言:javascript
复制
function find(collection, data, limit, callback) {
   mongo.db.collection(collection).findOne(data, function(err, r) {
     callback(r);
   });
}

显然,我无法从匿名函数callback返回结果,所以如何将结果传递给h.reponse(result)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-02 21:00:47

经过一些调试,HAPI允许您返回一个承诺,所以返回的结果在一个承诺是有效的!

代码语言:javascript
复制
server.route({
   method: 'GET',
   path: '/marvel/universal/verify/{serial?}',
    handler: function(request, h) {
      let obj = { "test": "a" };
      return new Promise(function(resolve,reject){
        Db.find('marvel', obj, 1, function(result) {
          resolve(h.response(result));
        });
      });
    }
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47612444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档