【发布时间】:2017-10-24 09:51:20
【问题描述】:
我有 laravel 项目,并希望使用客户端休息集成贝宝快速结帐。我有几个问题。
- 点击 paypal 按钮进行付款时出现以下错误:
-
也有这个错误:
指定窗口的域 * 上的 xcomponent_delegate_ppcheckout 的请求侦听器已经存在
但我的项目中没有listeners.js
- 最后一个问题。如果我使用客户端休息,我是否需要对 paypal api 进行 curl 请求。
这是我的代码。
paypal.Button.render({
env: 'sandbox', // sandbox | production
client: {
sandbox: 'AZDxjDScFpQtjWTOUtWKbyN_bDt4OgqaF4eYXlewfBP4-8aqX3PiV8e1GWU6liB2CUXlkA59kJXE7M6R',
production: 'EFPOKHzlSKXUGm9z615EopgdiqkKqVTfMayOzyadr06mWDe3NwaIKwBr7yZTpKZQbLisQ8WT5vIh2gyn'
},
commit: true,
payment: function(actions) {
return actions.payment.create({
transactions: [
{
amount: { total: '5', currency: 'USD' }
}
]
});
},
onAuthorize: function(data, actions) {
return actions.payment.execute().then(function() {
window.alert('Payment Complete!');
console.log('The payment was authorized!');
console.log('Payment ID = ', data.paymentID);
console.log('PayerID = ', data.payerID);
});
},
onCancel: function(data) {
console.log('The payment was cancelled!');
}
}, '#paypal-button-container');
我在看这个教程:
https://github.com/paypal/paypal-checkout/blob/master/docs/paypal-rest-api.md
有 curl 请求,但是任何人都可以解释为什么我们在客户端情况下需要这些 curl 请求。非常感谢。
【问题讨论】:
-
首先,您可以尝试清除您的cookies吗?如果您仍然收到错误,您可以链接到您的网站,以便我可以尝试重现问题
-
我不能给你链接,因为我在本地尝试。也许它不是 100% 工作,因为我在本地,在现场也许它会完美工作?现在及时发布请求有错误错误:请求发布sandbox.paypal.com/v1/payments/payment失败并出现401错误并且付款弹出窗口没有出现,再次单击贝宝按钮,它可以工作。我不明白为什么它有时会起作用。
标签: laravel paypal client-side express-checkout