Braintree的沙盒PayPal集成(使用JS和PHP)


Braintree's Sandbox PayPal Integration (using JS and PHP)

我目前正在将braintree集成到我公司的网站上,但仅适用于PayPal订单。我目前正在使用布伦特里的沙盒。当我尝试设置大脑树时,我使用shippingAddressOverpreve来设置测试送货地址。但是,我一直在将默认送货地址返回给我。

<?php
require_once '_environment.php';
$clientToken = Braintree_ClientToken::generate();
?>
<html>
<head>
</head>
<body>
    <div id="paypal-container"></div> 
    <!-- Scripts -->
    <script src="https://code.jquery.com/jquery-2.1.1.js"></script>
    <script src="https://js.braintreegateway.com/v2/braintree.js"></script>
    <script>
        braintree.setup("<?php print $clientToken; ?>", "custom", {
            paypal: {
                container: "paypal-container",
                singleUse: true, // Required
                amount: 10.00, // Required
                currency: 'USD', // Required
                locale: 'en_us',
                enableShippingAddress: 'true',
                shippingAddressOverride: {
                    recipientName: 'Scruff McGruff',
                    streetAddress: '1234 Main St.',
                    extendedAddress: 'Unit 1',
                    locality: 'Chicago',
                    countryCodeAlpha2: 'US',
                    postalCode: '60652',
                    region: 'IL',
                    phone: '123.456.7890',
                    editable: false
                }
            },
            onPaymentMethodReceived: function (obj) {
                //doSomethingWithTheNonce(obj.nonce);
                console.log(obj.details.shippingAddress);
            }
        });
    </script>
</body>
</html> 

是否有理由让我不断获得默认送货地址而不是设置的地址?

完全披露:我在Braintree工作。

这是一个已知问题,Braintree开发人员正在调查它。现在,如果您需要shippingAddressOverveing功能,我建议回滚到早期版本。您可以在已打开的 GitHub 问题中跟踪解决此问题的进度。如果您有任何其他问题,请联系 Braintree 支持。

我有同样的问题,我尝试使用旧版本的 braintree.js,在 2.7.1 版中它可以工作!也许在最新版本的 Braintree 中有些东西坏了:(