拥有带有 CB 和 PayPal 的 Braintree 自定义表单
Posted
技术标签:
【中文标题】拥有带有 CB 和 PayPal 的 Braintree 自定义表单【英文标题】:Having a Braintree custom form with CB and PayPal 【发布时间】:2014-12-30 08:33:41 【问题描述】:我们不想使用 Braintree 的 dropin 表单来坚持我们的 UI。 到目前为止,我们只有 CC 字段的付款表单运行良好。我们正在设置braintree.js:
braintree.setup(token, "custom",
id: "options"
);
然后是 PayPal,我们将 PayPal 容器添加到设置中:
braintree.setup(token, "custom",
id: "options",
paypal:
container: "paypal-button"
);
直到上周六,一切都在本地工作。通过挖掘,我发现在填写 CC 字段时,payment_method_nonce 不再发送到服务器:
虽然 nonce 输入出现在我的表单中的客户端!!!
那么这里是怎么回事? Braintree.js 是否以某种方式与表单提交进行交互?为什么这个 payment_method_nonce 有时会在服务器端被检索到(通过 PayPal 支付时),而有时却不是(通过 CC 支付时)?
谢谢
【问题讨论】:
我在布伦特里工作。你还有这个问题吗?这可能与我们最近修复的问题有关。如果您仍然拥有它,最好的选择是contact our support team。 问题已修复;顺便说一句,我已经联系了您的支持。我首先在这里发布了我的问题,因为通常可以安全地假设您的代码是问题,而不是 Braintree 的;) 【参考方案1】:你快到了。当您使用带有额外 PayPal 按钮的自己的信用卡表单时,您需要使用“自定义”作为集成方法:
braintree.setup(token, "custom",
id: "options",
paypal:
container: "paypal-button"
);
【讨论】:
嗨@mrak,对于我的第二个代码区域中的拼写错误,我很抱歉,但我在使用您提到的“自定义”时遇到了这个问题。所以错误不是来自这个。 你是怎么想出来的?我在任何地方都找不到合适的braintree.setup 文档。是否有定义可用选项或标准 API 文档的地方?我超越了他们侮辱性简单和杂乱无章的网站上的“向导”演练。【参考方案2】:好吧,问题出在 Braintree 这边。
将https://js.braintreegateway.com/v2/braintree.js 与大于2.2.4 的braintree.js 版本一起使用可以解决问题。
【讨论】:
以上是关于拥有带有 CB 和 PayPal 的 Braintree 自定义表单的主要内容,如果未能解决你的问题,请参考以下文章
Paypal:通过 Express Checkout 定期付款,无需用户拥有 paypal 帐户