支付成功时打开特定url-paypal按钮

Posted

技术标签:

【中文标题】支付成功时打开特定url-paypal按钮【英文标题】:Open specific url when successful pay - paypal button 【发布时间】:2020-11-27 22:15:33 【问题描述】:

我创建了 Smart paypal 按钮并获得了此代码

<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=sb&currency=EUR" data-sdk-integration-source="button-factory"></script>
<script>
  paypal.Buttons(
      style: 
          shape: 'pill',
          color: 'gold',
          layout: 'vertical',
          label: 'buynow',
          
      ,
      createOrder: function(data, actions) 
          return actions.order.create(
              purchase_units: [
                  amount: 
                      value: '13.88'
                  
              ]
          );
      ,
      onApprove: function(data, actions) 
          return actions.order.capture().then(function(details) 
              alert('Transaction completed by ' + details.payer.name.given_name + '!');
          );
      
  ).render('#paypal-button-container');
</script>

我想知道,是否有支付成功后打开特定url的功能,以便在警报后添加onApprove功能?会这样吗?

window.open() 在这种情况下会起作用吗?

【问题讨论】:

【参考方案1】:

您想使用location.assign。语法:

location.assign(url);

【讨论】:

【参考方案2】:

你可以使用"location.replace()"。

您还可以从详细信息对象中获取订单 ID,并将其用作重定向 URL 中的获取参数。这允许您在下一页验证交易,防止用户直接调用“成功”url。

【讨论】:

以上是关于支付成功时打开特定url-paypal按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何获取支付宝PID和KEY?

PayPal 支付成功后显示 HTML 按钮

支付成功后渲染视图

在 SDK 中实现自定义取消按钮

微信支付接口中为啥demo中提供的js调用不到支付界面

PayPal Checkout 与智能支付按钮的集成