作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
截至 2019 年 7 月的 Braintree SDK 开发人员文档提供了该标准:
let braintreeClient = BTAPIClient(authorization: "<#CLIENT_AUTHORIZATION#>")!
let cardClient = BTCardClient(apiClient: braintreeClient)
let card = BTCard(number: "4111111111111111", expirationMonth: "12", expirationYear: "2018", cvv: nil)
cardClient.tokenizeCard(card) { (tokenizedCard, error) in
// Communicate the tokenizedCard.nonce to your server, or handle error
}
但是当初始化中需要邮政编码时,该类接受 NSDictionary 参数。问题是 key 与 Braintree SDK 属性不匹配
我用过:
let cardParameters: [String: Any] = [number:"4111111111111111",expirationMonth: "12", expirationYear: "2018", cvv: "111", postalCode: "94107"]
let card = BTCard.init(parameters: cardParameters)
The errors say : "Must provide postal code" or "cvv must be provided"
最佳答案
技巧是使用内置属性初始化 BTCard 对象并匹配它们,而不是使用 NSDictionary。所以这有效:
let braintreeClient = BTAPIClient(authorization: "<#CLIENT_AUTHORIZATION#>")!
let cardClient = BTCardClient(apiClient: braintreeClient)
let card = BTCard.init()
card.number = "4111111111111111"
card.expirationMonth = "12"
card.expirationYear = "2018"
card.cvv = "111"
card.postalCode = "94107"
cardClient.tokenizeCard(card) { (tokenizedCard, error) in
// Communicate the tokenizedCard.nonce to your server, or handle error
}
这样 BTCard 对象就会返回可接受的 key ...我花了几个小时尝试不同的方法才得到这个答案。 Braintree 和他们的文档没有提供此示例,但这是对我有用的唯一方法。
(您的每个后端可能会在将数据发送到 Braintree 之前对其进行整理,但这在您集成时会有所帮助)
关于swift - 如何在 BTCard 中设置信用卡可选数据,以便 Braintree 后端在 swift 4 中提供有效 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56927610/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!