我正在学习流星,我正在尝试使用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给了我不确定的结果。