无法在流星中调用API

时间:2015-05-29 10:49:27

标签: javascript api rest meteor

我正在学习流星,我正在尝试使用Restivus开发API。使用以下代码我正在开发meteor REST API datatosend = [];      Restivus.configure({         useAuth:false,         prettyJson:是的     });     Restivus.addCollection(订单);     Restivus.addRoute(' myorder /',{authRequired:true},{     get:function(){       var orders = Orders.find()。fetch();       if(orders){         返回{状态:'成功',数据:订单};       }       返回{         statusCode:404,         正文:{状态:'失败',消息:'订单未找到'}       };     }
    });

当我使用http://localhost:3000/api/myorder从浏览器运行此API时,我正在使用我的mongodb数据库中的订单获取json,但是当我使用HTTP.call从meteor编码调用此API时,它无效。我开发了以下代码无法正常工作

//server side
if(Meteor.isServer){
Meteor.methods({
    getOrderServer: function () {
        this.unblock();
        var url = "http://localhost:3000/api/myorder/";
        var result = HTTP.call("GET",url);
        return result;
    }
});
} 

//client side
Template.orderslisting.helpers({
orders:function (){
    Meteor.call("getOrderServer",function (error,result){
    if(error){
        console.log(error.reason);
    }
    else{
        // do something with result
        datatosend = result.data.data;

    }
    return datatosend 
   });
   } 
});

这个console.log给了我undefined。我已经在订单列表包上开发了一个额外的信息,我在该包中有上面的客户端代码。并且服务器端代码已写入server.js文件中。所以我的问题是我的api给了我不确定的结果。

0 个答案:

没有答案