javascript - Paypal 智能支付抛出错误但仍在处理付款

标签 javascript paypal paypal-rest-sdk

我有一个客户网站,他们要求在他们的网站上进行借记/贷记付款,我已经设置了智能支付设置,它似乎在网站上运行正常,但是,我只是添加了一个功能来检索来自 URL 的变量(价格) 智能按钮抛出一个错误代码 并且我假设它是因为 javascript 部分从 URL 中获取金额变量 但是无论错误代码。

下面是我的代码示例

function getQueryVariable(variable)
{
       var query = window.location.search.substring(1);
       var vars = query.split("&");
       for (var i=0;i<vars.length;i++) {
               var pair = vars[i].split("=");
               if(pair[0] == variable){return pair[1];}
       }
       return(false);
}
var sel = getQueryVariable("price");

  paypal.Buttons({
    createOrder: function(data, actions) {
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: sel
          }
        }]
      });
    },
    onApprove: function(data, actions) {
      return actions.order.capture().then(function(details) {
        alert('Transaction completed by ' + details.payer.name.given_name);
      });
    }
  }).render('#paypal-button-container');

最佳答案

尝试在成功时执行 window.location.href 重定向而不是显示警报,一切都应该很好

或者,您可以在呈现之前保存对按钮的引用,然后在成功时关闭它们并使用任何成功消息更新页面。

类似(未经测试的):

  window.myButtons = paypal.Buttons({
    createOrder: function(data, actions) {
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: sel
          }
        }]
      });
    },
    onApprove: function(data, actions) {
      return actions.order.capture().then(function(details) {
        alert('Transaction completed by ' + details.payer.name.given_name);
        window.myButtons.close();
        document.getElementById('paypal-button-container').innerHTML = '<pre>' + JSON.stringify(details, null, 4) + '</pre>';
      });
    }
  });
  window.myButtons.render('#paypal-button-container');

关于javascript - Paypal 智能支付抛出错误但仍在处理付款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60983344/

相关文章:

javascript - 在运算符上拆分数学表达式并将运算符包含在输出数组中

javascript - 将 css 属性添加到元素 :hover state

javascript - jquery 通过选择值来设置 div 的样式

ruby-on-rails - Net::HTTP.post_form 抛出 EOFError?

Paypal GetUserinfo (Identity) 只返回 user_id

javascript - 使用 Leaflet 计算分数缩放

android - Paypal sdk- INSTRUMENT_DECLINE 错误

php - 使用 Paypal php rest SDK 汇款

c# - 付款错误 : PayPal error: Invalid request. 查看详情。 (VALIDATION_ERROR) Paypal

paypal - 我是只需要执行一次 PayPal 账单协议(protocol),还是每次账单到期时都需要执行?