1
我正在为我的iOS应用程序开发付款结帐功能。在PayPal SDK(Java)中执行批准的付款时,在哪里获得payerId
服务器后端是用java编写的。
数据,我在PayPalPaymentViewController用户批准付款后获得与intent
为authorize
是
{
client = {
environment = sandbox;
"paypal_sdk_version" = "2.14.2";
platform = iOS;
"product_name" = "PayPal iOS SDK";
};
response = {
"authorization_id" = 6238627648439564E;
"create_time" = "2016-09-23T08:54:18Z";
id = "PAY-8J788131PV1025742K7SO3MQ";
intent = authorize;
state = approved;
};
"response_type" = payment;
}
在那之后,我送id
(PAY-8J37....
)服务器来执行支付。
服务器代码在这里:
Payment payment = new Payment();
payment.setId(paymentId);
APIContext apiContext = new APIContext(PAYPAL_CLIENT_ID_SANDBOX, PAYPAL_CLIENT_SECRET_SANDBOX, "sandbox");
PaymentExecution paymentExecution = new PaymentExecution();
paymentExecution.setPayerId("");//<--- payerId is required
try {
payment.execute(apiContext, paymentExecution);
} catch (PayPalRESTException e) {
//print error
}
然后PayPalRESTException
被捕获。 错误详细是:field payer_id must not be blank
这个问题花了我几个小时的谷歌搜索。
此外,authorization_id
在iOS SDK响应中意味着什么?它没用吗?
请帮帮我。 在此先感谢。