【问题标题】:Using Braintree Dropin UI "braintree is not defined"使用 Braintree Dropin UI “braintree 未定义”
【发布时间】:2019-01-06 23:29:43
【问题描述】:

我正在尝试遵循 Braintree 集成的基础知识,但在看到运行流程的绊脚石之后又遇到了绊脚石。

现在我正在尝试查看 Braintree 的 dropin UI 并使用他们的代码,复制和粘贴我遇到了

“未定义大脑树”

执行braintree.dropin.create 时。

<div id="dropin-container"></div>
<button id="submit-button">Purchase</button>

<script src="https://js.braintreegateway.com/web/dropin/1.14.1/js/dropin.min.js"></script>

<script>
  var submitButton = document.querySelector('#submit-button');

  braintree.dropin.create({
    authorization: 'CLIENT_AUTHORIZATION',
    container: '#dropin-container'
  }, function (err, dropinInstance) {
    if (err) {
      // Handle any errors that might've occurred when creating Drop-in
      console.error(err);
      return;
    }
    submitButton.addEventListener('click', function () {
      dropinInstance.requestPaymentMethod(function (err, payload) {
        if (err) {
          // Handle errors in requesting payment method
        }

        // Send payload.nonce to your server
      });
    });
  });
</script>

有人对如何让这个 dropin 工作有任何建议吗?

编辑: 就开发堆栈而言,我在 Django 环境中创建它并使用 JavaScript 库和 Python 库进行测试。这个特定的实现我正在尝试使用 javascript 库。

【问题讨论】:

  • 您使用什么服务器端语言?您是否包含了 Braintree 库? 完全披露:我为 Braintree 工作。随时联系支持 help.braintreepayments.com
  • @turaco 我更新了上面的帖子。我正在尝试使用 JavaScript 库和 Python 库。我将尝试添加 JavaScript 库。

标签: javascript braintree braintree-sandbox


【解决方案1】:

我通过重新开始并使用以下代码解决了我自己的问题:

https://developers.braintreepayments.com/start/hello-client/javascript/v3

<head>
  <meta charset="utf-8">
  <script src="https://js.braintreegateway.com/web/dropin/1.14.1/js/dropin.min.js"></script>
</head>
<body>
  <div id="dropin-container"></div>
  <button id="submit-button">Request payment method</button>
  <script>
    var button = document.querySelector('#submit-button');

    braintree.dropin.create({
      authorization: 'CLIENT_TOKEN_FROM_SERVER',
      container: '#dropin-container'
    }, function (createErr, instance) {
      button.addEventListener('click', function () {
        instance.requestPaymentMethod(function (err, payload) {
          // Submit payload.nonce to your server
        });
      });
    });
  </script>
</body>

然后我通过 Python 库提供了 CLIENT_TOKEN_FROM_SERVER。有效。

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,我将 dropin.create 的代码移到页面加载完成后问题消失

    【讨论】:

      猜你喜欢
      • 2020-06-05
      • 1970-01-01
      • 2021-12-16
      • 2023-03-29
      • 2020-01-28
      • 1970-01-01
      • 2019-06-07
      • 2021-10-19
      • 2015-03-11
      相关资源
      最近更新 更多