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響應中意味着什麼?它沒用嗎?
請幫幫我。 在此先感謝。