我真的很难与流星回调。我有一个客户端调用服务器端方法,但是当回调从服务器回来时,我得到一个未定义的结果。据我所知,这是因为服务器没有完成POST,但已经发送回调。我是流星新手,这看起来很困难。我至今:流星方法调用 - 等待方法完成
客户:
Meteor.call("createCustomer", city, fname, lname, email, function(error, result) {
if (error) {
console.log("error: " + error);
} else {
console.log("result: " + result)
}
});
服务器:
Meteor.methods({
'createCustomer': function(city, fname, lname, email) {
HTTP.call("POST", url+'/customer?api_key='+process.env.API_TOKEN ,{
data: {
city: city,
first_name: fnam,
last_name: lname,
email: email
}
}, function (error, result) {
if (error) {
return 'error';
} else {
return'success';
}
});
}
});
我可能会做一些非常愚蠢的,比我预想的可能更为复杂,但任何帮助会走很长的路!
感谢这么多,就像一个魅力 – PsydeStep
@PsydeStep所以其实没有必要弯曲它的异步。如果你不通过'asyncCallback','HTTP.call'同步运行。 [阅读'asyncCallback'描述。](https://docs.meteor.com/api/http.html#HTTP-call) –
@RamilMuratov感谢您的洞察力。考虑到Waiski的工作方式,这是正确的做法。 – PsydeStep