我正在尝试在AngularJS应用下集成PayPal in-context checkout。一切都按预期工作:
现在,我想知道是否有办法在成功或取消后的情景中阻止重定向页面。
以下是客户端应用中的一段代码:
<button id="t2" type="submit">Pay</button>
<script>
window.paypalCheckoutReady = function () {
paypal.checkout.setup("API_CREDENTIALS", {
environment: "sandbox",
button: ["t2"],
click: function (event) {
event.preventDefault();
//init lightbox modal
paypal.checkout.initXO();
//start checkout flow
paypal.checkout.startFlow(TOKEN);
}
});
};
</script>
<script src="//www.paypalobjects.com/api/checkout.js" async=""></script>
答案 0 :(得分:1)
基于JS的In-Context弹出式窗口只提供前端体验,并构成如下所述的付款顺序的一部分,
checkout.js
立即控制),浏览器重定向到您的已停止的返回页面execute
API以完成付款您尝试中断的是#2和#3之间的行为,它位于付款流程的中间,您可以查看的自定义是定义您的redirect_urls
对象PAY
方法的API有效负载(用于生成付款令牌),使用return_url
与您的路由逻辑(通过URL和字符串查询的组合)在订单确认页面上向客户显示相应的内容(步骤#3)
当您的客户取消/关闭弹出窗口时,cancel_url
中的规则相同(步骤2)
"redirect_urls": {
"return_url": "http://www.return.com/routing/?stringQuery",
"cancel_url": "http://www.cancel.com/routing/?stringQuery"
}
请务必在之后的返回页面中调用execute
来电