条纹确认swift

时间:2018-05-02 20:32:50

标签: ios swift stripe-payments

我使用CardIO和条纹为应用程序快速付款。我会查看条带文档,了解如何在不设置完整帐户的情况下快速验证。

我的第一个问题是textField.isValid确认了什么?是否有一些调用条纹来确认卡或是一个简单的内容检查?

func paymentCardTextFieldDidChange(_ textField: STPPaymentCardTextField) {
    // Toggle buy button state
    buyButton.enabled = textField.isValid
}

第二,如果它确认卡有效,那么这与下面的代码有什么区别?是否仅在购买即将执行时使用令牌?

func userDidProvideCreditCardInfo(cardInfo: CardIOCreditCardInfo!, inPaymentViewController paymentViewController: CardIOPaymentViewController!) {
        if let info = cardInfo {
            let str = NSString(format: "Received card info.\n Number: %@\n expiry: %02lu/%lu\n cvv: %@.", info.redactedCardNumber, info.expiryMonth, info.expiryYear, info.cvv)
            print(str)

            //dismiss scanning controller
            paymentViewController?.dismissViewControllerAnimated(true, completion: nil)

            //create Stripe card
            let card: STPCardParams = STPCardParams()
            card.number = info.cardNumber
            card.expMonth = info.expiryMonth
            card.expYear = info.expiryYear
            card.cvc = info.cvv

            //Send to Stripe
            getStripeToken(card)

        }
    }

编辑:我应该补充说,如果我必须开始处理付款以确认卡或我能事先这样做,我会很好奇吗? (例如:您输入的exp日期不正确)。

1 个答案:

答案 0 :(得分:0)

在这种情况下,{p> textField.isValid validates that each of the STPPaymentCardTextField fields are valid;这不涉及对Stripe的任何API调用。

第二个示例确实对Stripe进行了“创建令牌”API调用,但这实际上并不验证卡;在您将其用于create a Customerstore it on an existing Customercreate a Charge之前,它才会得到验证。