【问题标题】:Handle the cancel event on paypal client with braintree使用braintree处理paypal客户端的取消事件
【发布时间】:2017-08-07 10:34:09
【问题描述】:

我正在尝试处理用户在打开 PayPal 客户端时单击取消按钮的事件。

使用 Braintree 完成集成。

设置如下:

braintree.paypal.create({
            client: clientInstance
            }
        },

我已经看到 Braintree 有这个事件的句柄(称为“onCacncelled”),但仅适用于 v2。我已经问过他们该怎么做,但他们的解决方案不起作用,因为使用了 briantree 对象的 setup 属性,该属性在 v3 中不存在。或者至少这是 js 错误告诉我的。

【问题讨论】:

    标签: events paypal handle braintree


    【解决方案1】:

    全面披露:我在 Braintree 工作。如果您还有任何问题,请随时联系support

    在 v3 中,您必须标记 PayPal 实例才能启动 PayPal 登录流程。与 v2 中的 onCancelled 回调函数不同,在 v3 中,它位于错误处理中,您可以在其中引导标记化错误或过早关闭流以增加控制。

    请参阅下面的示例和链接:

    https://braintree.github.io/braintree-web/3.11.0/PayPal.html#tokenize

    paypalInstance.tokenize({
      flow: 'vault' // Required
      // Any other tokenization options
    }, function (tokenizeErr, payload) {
      button.removeAttribute('disabled');
    
        if (tokenizeErr) {
          // Handle tokenization errors or premature flow closure
    
          switch (tokenizeErr.code) {
            case 'PAYPAL_POPUP_CLOSED':
              console.error('Customer closed PayPal popup.');
              break;
            case 'PAYPAL_ACCOUNT_TOKENIZATION_FAILED':
              console.error('PayPal tokenization failed. See details:', tokenizeErr.details);
               break;
            case 'PAYPAL_FLOW_FAILED':
              console.error('Unable to initialize PayPal flow. Are your options correct?', tokenizeErr.details);
              break;
            default:
              console.error('Error!', tokenizeErr);
        }
    } else {
      // Submit payload.nonce to your server
    }
    });
    

    【讨论】:

      猜你喜欢
      • 2014-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多