支付宝在上下文结帐 - 防止页面重定向
问题描述:
我正在尝试将PayPal in-context checkout集成到AngularJS应用下。一切正常:支付宝在上下文结帐 - 防止页面重定向
- 通过REST API我把所有的细节并得到结账标志
- 然后,令牌被传递到客户端应用程序
- 在上下文结账被称为具有一定TOKEN
现在我想知道是否有办法阻止在成功或取消场景后重定向页面。
以下是在客户端应用程序的代码段:
<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>
答
的JS基于In-上下文弹出简单地提供了一个前端体验,并且使得所述支付的一部分概述如下,
- 在上下文弹出和用户交互(给付款同意)序列
- 弹出自动关闭(由
checkout.js
controled,即刻)和浏览器重定向到您的desinated返回页面 - 呼叫
execute
API在返回页面完成支付 - 网络挂接被触发(通知你的网站有关交易状态)
什么你想中断之间#2,#3的行为,这是在付款流程的中间,你可以看看定制的定义API在您的redirect_urls
对象方法PAY
的有效载荷(您用于生成支付令牌),使用return_url
与您的路由逻辑(通过组合URL和字符串查询)在订单确认页面上向您的客户显示相应的内容(步骤#3)
当您的客户取消/关闭弹出窗口时(步骤#2)
"redirect_urls": {
"return_url": "http://www.return.com/routing/?stringQuery",
"cancel_url": "http://www.cancel.com/routing/?stringQuery"
}
只是一定要调用execute
呼叫你的回报页之后
我不知道你的页面的具体情况。是否有可能将用户重定向到他们所在的同一页面? (我已经为社交登录做了这个)。如果在这个过程中数据丢失了,你可能会将它存储在会话cookie中。 – zevnicsca
@zevnicsca是的,它现在适用于重定向。我唯一的要求是避免任何形式的重定向 - 仅仅因为一件事 - 用户体验。所以我需要知道什么时候完成了PayPal脚本,以及如何完成(成功或错误),并使用Angular进行其余的路由。 – nidzix
您可以指定如何控制Angular路由的用户体验吗?基本上,Express Checkout需要重定向,因为您需要在返回页面中执行付款,这意味着上下文弹出体验仅在付款方面提供用户授权/同意。 –