我试图调用方法,在这一个中,我做一个http get,如果结果还可以我返回它并在我的mongodb基础上跟踪它,如果它返回我的错误,我想跟踪它太
不幸的是,它不起作用!我在stackoverflow上阅读了帖子,但只有旧问题。
你有解决方案吗?
客户:
Meteor.call('get',function(err, response) {
console.log(err+" ee"+response);
});
服务器:
var header = 'xxxxxxxx';
Meteor.startup(function () {
Meteor.methods({
get : function(){
console.log("call");
var url = 'http://xxxxxxxxxx';
this.unblock();
Meteor.http.get(url, function(err,res){
if(!err){
//tracking
return res;
}else{
//tracking
return err;
}
});
}
});
});
答案 0 :(得分:1)
在服务器上,您可以在没有回调的情况下调用HTTP.get
来执行“同步”HTTP呼叫。您需要在命令行中meteor add http
将HTTP
添加到项目中。
Meteor.methods({
get: function(){
console.log("call");
var url = 'http://xxxxxxxxxx';
this.unblock();
try {
var res = HTTP.get(url);
// tracking
return res;
} catch (err) {
// tracking
return err; // or throw new Meteor.Error(...)
}
}
});