1
私のiOSアプリの支払いチェックアウト機能を開発しています。PayPal SDK(Java)で承認済み支払いを実行する際にpayerIdを取得する場所
サーバのバックエンドはjavaで書かれています。私はintent
がauthorize
であるとPayPalPaymentViewControllerでユーザー承認のお支払い後に取得
データは、私が支払いを実行するためのサーバ用id
(PAY-8J37....
)を送信し、その後
{
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;
}
です。ここ
Serverコード:
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の応答の意味は何ですか?役に立たないですか?
私を助けてください。 ありがとうございます。