Paypal创建订阅onApproval GET超时



我正在尝试访问在Paypal创建订阅后的响应json。

这是代码-它使用Paypal javascript SDK(它来自SDK文档和这个答案):

createSubscription: function (data, actions) {
return actions.subscription.create({
'plan_id': 'xxx'
});
},
onApprove: function (data, actions) {
return actions.subscription.get().then(function (details) {
console.log(details)
});
},

订阅创建成功,但onApprove actions.subscription.get()行超时,并显示控制台消息:

b.sbox.stats.paypal.com/v2/counter.cgi?p=uid_xxx&s=SMART_PAYMENT_BUTTONS:1 GET https://b.sbox.stats.paypal.com/v2/counter.cgi?p=uid_xxx&s=SMART_PAYMENT_BUTTONS net::ERR_CONNECTION_TIMED_OUT

我是否使用正确的代码来获取json?如果是这样,为什么它会超时?

编辑:再次搜索Paypal社区后,我修改了代码如下:

return actions.subscription.get(data.subscriptionID).then(function (details) {
console.log(details)

});

会产生一个稍微不同的错误消息:

b.sbox.stats.paypal.com/v2/counter.cgi?p=uid_bf756f1ba7_mdg6ntk6mjm&s=SMART_PAYMENT_BUTTONS:1加载资源失败:net::ERR_CONNECTION_TIMED_OUT

对于订阅,没有理由在onApprove中执行'get'。使用data中已有的信息。

由于onApprove是客户端操作,并且在订阅激活后发生,因此没有业务关键逻辑应该依赖于正在执行的此代码路径,因为它可能不依赖于此代码路径。

如果你有任何必须执行的内容,为BILLING.PLAN.ACTIVATED(计划创建)和/或payment . sale . completed(付款发生)设置一个webhook监听器

最新更新