如何解决PayPal Checkout JavaScript:无需重新导向或刷新页面即可更改币种
我们的网站上有一个结帐流程,如果重定向到PayPal进行审批,该流程将中断。另外,我们使用不同的货币,因此PayPal SDK无法用于我们的目的,因为您需要重新加载以更改货币。
我们是否可以建立自己的结帐集成,以在新窗口中打开从API端收到的URL,还是我们唯一的使用SDK的选择?
解决方法
您需要重新加载JS SDK才能更改币种,但无需刷新页面。这是一个简短的原始JS函数和示例用法:
function loadAsync(url,callback) {
var s = document.createElement('script');
s.setAttribute('src',url); s.onload = callback;
document.head.insertBefore(s,document.head.firstElementChild);
}
loadAsync('https://www.paypal.com/sdk/js?client-id=sb¤cy=USD',function() {
paypal.Buttons({
// Set up the transaction
createOrder: function(data,actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: '0.01'
}
}]
});
},// Finalize the transaction
onApprove: function(data,actions) {
return actions.order.capture().then(function(details) {
// Show a success message to the buyer
alert('Transaction completed by ' + details.payer.name.given_name);
});
}
}).render('body');
});
或者,paypal-js软件包是最近发布的,并且具有相同的作用
由于您提到了服务器端API集成,因此,您需要使用https://developer.paypal.com/demo/checkout/#/pattern/server的前端代码,并将其与服务器上的两条路由配对,其中一条用于“设置交易”,另一条用于记录在https://developer.paypal.com/docs/checkout/reference/server-integration/
中的“捕获交易”版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。