Я пытаюсь сделать простую проверку счета для клиента, чтобы увидеть, нужно ли ему добавить источник, прежде чем перейти на другую страницу.Однако мои вызовы атрибутов объекта STPCustomer не соответствуют информации для полного ответа.
Я пытался очистить кэш клиента и перезагрузить клиента, но ... все равно не совпадает.
Вот усеченный, как, необходимый код.К классу прикреплен STPPaymentContextDelegate.
private var customerContext = STPCustomerContext?
private var paymentContext = STPPaymentContext?
func setupStripe() {
self.paymentContext = STPPaymentContext(customerContext: self.customerContext!)
self.paymentContext?.hostViewController = self
self.paymentContext?.delegate = self
self.paymentView = STPPaymentMethodsViewController(configuration: STPPaymentConfiguration.shared(), theme: STPTheme.default(), customerContext: self.customerContext!, delegate: self)
}
func getCustomerSources() {
if let customer = customerContext.retrieveCustomer({ (customer, error) in
if customer != nil {
print(customer.sources.count)
print(customer.sources)
print(customer.allResponseFields)
}
})
}
Когда я запускаю getCustomerSources()
на тестовом клиенте, я ожидаю:
1
[ba_1Dvf46LrBVaGM6Sq9qIYhOlJ]
AnyHashable("id"): cus_number, AnyHashable("email"): rosa_diaz@gmail.com, AnyHashable("default_source"): ba_1Dvf46LrBVaGM6Sq9qIYhOlJ, AnyHashable("created"): 1548220659, AnyHashable("description"): LiG8WbVhT8SVhta8LdfUuWzOwQn2, AnyHashable("livemode"): 0, AnyHashable("object"): customer, AnyHashable("sources"): {
data = (
{
"bank_name" = "STRIPE TEST BANK";
country = US;
currency = usd;
customer = "cus_EOQzwwGPjzopjS";
fingerprint = 1AQMB9nzeGSGXHst;
id = "ba_1Dvf46LrBVaGM6Sq9qIYhOlJ";
last4 = 6789;
metadata = {
};
object = "bank_account";
"routing_number" = 110000000;
status = verified;
}
);
"has_more" = 0;
object = list;
"total_count" = 1;
url = "/v1/customers/cus_EOQzwwGPjzopjS/sources";
}])
Однако вместо моих 1
и ba_1Dvf46LrBVaGM6Sq9qIYhOlJ
, я получаю 0
и []
. Но раздел allResponseFields такой же.
Есть какие-нибудь идеи относительно того, почему существует несоответствие между тем, что возвращают атрибуты объекта STPCustomer, и тем, что фактический ответ говорит мне?