如何解析 braintree 创建客户响应?
How do I parse braintree create customer response?
我验证信用卡如下:
$result = Braintree_PaymentMethod::create([
'paymentMethodNonce' => nonceFromTheClient,
'options' => [
'verifyCard' => true
]
]);
验证成功后,我得到一个巨大的对象,包括:
Braintree_Result_Successful[Braintree_Customer[id=123456, merchantId=xyz, firstName=, lastName=, company=, email=, phone=, fax=, website=, createdAt=Friday, 11-Sep-15 22:05:53 UTC, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, customFields=, creditCards=0=Braintree_CreditCard[bin=411111, expirationMonth=03, expirationYear=2017, last4=1111, cardType=Visa, cardholderName=sc, commercial=Unknown, countryOfIssuance=Unknown, createdAt=Friday, 11-Sep-15 22:05:53 UTC, customerId=64065056, customerLocation=US, debit=Unknown, default=1, durbinRegulated=Unknown, expired=, healthcare=Unknown, imageUrl=https://assets.braintreegateway.com/payment_method_logo/visa.png?environment=sandbox, issuingBank=Unknown, payroll=Unknown, prepaid=Unknown, subscriptions=, token=384zbr, uniqueNumberIdentifier=123xyz, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, venmoSdk=, verifications=0=status=verified, cvvResponseCode=M, avsErrorResponseCode=, avsPostalCodeResponseCode=I, avsStreetAddressResponseCode=I, gatewayRejectionReason=, merchantAccountId=SignNow, processorResponseCode=1000, processorResponseText=Approved, id=d2jqnd, billing=firstName=, lastName=, company=, streetAddress=, extendedAddress=, locality=, region=, postalCode=, countryName=, creditCard=token=384zbr, bin=411111, last4=1111, cardType=Visa, expirationMonth=03, expirationYear=2017, customerLocation=US, cardholderName=sc, uniqueNumberIdentifier=xyz123, prepaid=Unknown, healthcare=Unknown, debit=Unknown, durbinRegulated=Unknown, commercial=Unknown, payroll=Unknown, issuingBank=Unknown, countryOfIssuance=Unknown, productId=Unknown, createdAt=Friday, 11-Sep-15 22:05:52 UTC, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, riskData=id=xyz, decision=Approve, billingAddress=, expirationDate=03/2017, maskedNumber=411111******1111, ......]]]]] [] []
我想读取上面响应中看到的信用卡令牌值:"token=384zbr"
我尝试通过以下方式访问它,但没有用
$result->creditCard->token
$result->creditCards[0]->token
我得到一个异常 "Undefined property on Braintree_Result_Successful: creditCard [] []."
你能做到吗:
$ token = result->Braintree_Result_Successful[0]-> Braintree_Customer[0]->token
如果使用print_r
而不是print
,对象的结构将更容易阅读!
$result->paymentMethod->token
是您从结果对象访问令牌的方式。
Braintree 支持帮助我纠正了它。访问令牌的正确方法是
$result->customer->paymentMethods[0]->token;
我尝试使用文档中的参数,但它不存在,因此阅读 Braintree 客户 Class 我发现 paymentMethods 是一个包含 returns paymentMethods 数组的方法。也许如果你有同样的问题试试这个:
$result->customer->paymentMethods()[0]->token;
我验证信用卡如下:
$result = Braintree_PaymentMethod::create([
'paymentMethodNonce' => nonceFromTheClient,
'options' => [
'verifyCard' => true
]
]);
验证成功后,我得到一个巨大的对象,包括:
Braintree_Result_Successful[Braintree_Customer[id=123456, merchantId=xyz, firstName=, lastName=, company=, email=, phone=, fax=, website=, createdAt=Friday, 11-Sep-15 22:05:53 UTC, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, customFields=, creditCards=0=Braintree_CreditCard[bin=411111, expirationMonth=03, expirationYear=2017, last4=1111, cardType=Visa, cardholderName=sc, commercial=Unknown, countryOfIssuance=Unknown, createdAt=Friday, 11-Sep-15 22:05:53 UTC, customerId=64065056, customerLocation=US, debit=Unknown, default=1, durbinRegulated=Unknown, expired=, healthcare=Unknown, imageUrl=https://assets.braintreegateway.com/payment_method_logo/visa.png?environment=sandbox, issuingBank=Unknown, payroll=Unknown, prepaid=Unknown, subscriptions=, token=384zbr, uniqueNumberIdentifier=123xyz, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, venmoSdk=, verifications=0=status=verified, cvvResponseCode=M, avsErrorResponseCode=, avsPostalCodeResponseCode=I, avsStreetAddressResponseCode=I, gatewayRejectionReason=, merchantAccountId=SignNow, processorResponseCode=1000, processorResponseText=Approved, id=d2jqnd, billing=firstName=, lastName=, company=, streetAddress=, extendedAddress=, locality=, region=, postalCode=, countryName=, creditCard=token=384zbr, bin=411111, last4=1111, cardType=Visa, expirationMonth=03, expirationYear=2017, customerLocation=US, cardholderName=sc, uniqueNumberIdentifier=xyz123, prepaid=Unknown, healthcare=Unknown, debit=Unknown, durbinRegulated=Unknown, commercial=Unknown, payroll=Unknown, issuingBank=Unknown, countryOfIssuance=Unknown, productId=Unknown, createdAt=Friday, 11-Sep-15 22:05:52 UTC, updatedAt=Friday, 11-Sep-15 22:05:53 UTC, riskData=id=xyz, decision=Approve, billingAddress=, expirationDate=03/2017, maskedNumber=411111******1111, ......]]]]] [] []
我想读取上面响应中看到的信用卡令牌值:"token=384zbr"
我尝试通过以下方式访问它,但没有用
$result->creditCard->token
$result->creditCards[0]->token
我得到一个异常 "Undefined property on Braintree_Result_Successful: creditCard [] []."
你能做到吗:
$ token = result->Braintree_Result_Successful[0]-> Braintree_Customer[0]->token
如果使用print_r
而不是print
,对象的结构将更容易阅读!
$result->paymentMethod->token
是您从结果对象访问令牌的方式。
Braintree 支持帮助我纠正了它。访问令牌的正确方法是
$result->customer->paymentMethods[0]->token;
我尝试使用文档中的参数,但它不存在,因此阅读 Braintree 客户 Class 我发现 paymentMethods 是一个包含 returns paymentMethods 数组的方法。也许如果你有同样的问题试试这个:
$result->customer->paymentMethods()[0]->token;