我目前正在将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 中有些东西坏了:(