Braintree 客户端令牌

问题描述 投票:0回答:0

我正在使用 Drop-in UI 集成 Braintree。这是在经典 ASP 中完成的,所以我必须手写,而不是使用 SDK。

我已成功收到来自 Braintree 的客户端令牌,但不确定要将什么传递给 Drop-in UI。这是我从 Braintree 得到的信息(“clientToken”为简洁起见缩短):

{"data":{"createClientToken":{"clientToken":"eyJ2ZXJzaW9uIjoyLCJhdXRob3JpemF0aW9uRmluZ2VycHJpbnQiOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpGVXpJMU5pSXNJbXRwWkNJNklqSXdNVGd3TkRJMk1UWXRjMkZ1WkdKdmVDSXNJbWx6Y3lJNkltaDBkSEJ6T2k4dllYQnBMbk5oYm1SaWIzZ3VZbkpoYVc1MGNtVmxaMkYwWlhkaGVTNWpiMjBpZlEuZXlKbGVIQWlPakUyT0RBNE1EQXhPRGtzSW1wMGFTSTZJbUl4TlRrM05Ea3pMVEUxT0VU0QifX0="}},"extensions":{"requestId":"169e6a8e-20a1-4105-8740-7d8461d7dd26"}}

然后我base64解码得到:

{ "version":2, "authorizationFingerprint":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsImtpZCI6IjIwMTgwNDI2MTYtc2FuZGJveCIsImlzcyI6Imh0dHBzOi8vYXBpLnNhbmRib3guYnJhaW50cmVlZ2F0ZXdheS5jb20ifQ.eyJleHAiOjE2ODA4MDA5NTksImp0aSI6ImY0MjdkMGQ4LWM5NzUtNDAwNy1hOTk5LWJhZWQ2ZjNlM2QxZiIsInN1YiI6IjJxMjQyZHZyeHBkNnFoZjMiLCJpc3MiOiJodHRwczovL2FwaS5zYW5kYm94LmJyYWludHJlZWdhdGV3YXkuY29tIiwibWVyY2hhbnQiOnsicHVibGljX2lkIjoiMnEyNDJkdnJ4cGQ2cWhmMyIsInZlcmlmeV9jYXJkX2J5X2RlZmF1bHQiOmZhbHNlfSwicmlnaHRzIjpbIm1hbmFnZV92YXVsdCJdLCJzY29wZSI6WyJCcmFpbnRyZWU6VmF1bHQiXSwib3B0aW9ucyI6eyJtZXJjaGFudF9hY2NvdW50X2lkIjoicHJvZHVjdGNhcnQifX0.STt-mLKt2VD-0LfzQbwxoEoIkUMOG5lyW1zdgU5kJfwaTKHAbPwiTB5p1EGrJQpZoj6hXl1zCSlubaQ2pvFKHQ", "configUrl":"https://api.sandbox.braintreegateway.com:443/merchants/xxxxxxxxx/client_api/v1/configuration", "merchantAccountId":"xxxxxxxx", "graphQL":{ "url":"https://example.com/graphql", "date":"2018-05-08", "features":[ "tokenize_credit_cards" ] } ... 
从文档看来,我应该将“authorizationFingerprint”传递给 Drop-in UI,但我不确定。这应该按原样传递、解码等吗?还是别的?

客户代码是:

<script src="https://js.braintreegateway.com/web/dropin/1.36.0/js/dropin.min.js"></script>`
  <!-- Step one: add an empty container to your page -->
    <form id="payment-form" action="/route/on/your/server" method="post">
       
        <div id="dropin-container"></div>
        <button id="submit-button" class="button button--small button--green">Purchase</button>
    </form>

`  <script type="text/javascript">
      $(document).ready(function () {
          var button = document.querySelector('#submit-button');

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

无论传递何种形式/部分的客户端令牌,Drop-in UI 都不会加载/出现。

javascript base64 braintree
© www.soinside.com 2019 - 2024. All rights reserved.