Ris*_*edi 5 scala paypal payment-gateway paypal-sandbox
我在我的项目中使用paypal付款.它适用于签证卡和万事达卡,付款成功完成.
private def doFinalPayment(payment: Payment, payer: Payer, accessToken: String): Payment = {
val apiContext = new APIContext(accessToken)
var objPay=payment
apiContext.setConfigurationMap(sdkConfig)
try {
objPay = objPay.create(apiContext)//Exception Occur here
// some code here...........
} catch {
case e: PayPalRESTException => {
println("EXCEPTION IN DO FINAL PAYMENT METHOD")
val msg = e.getMessage
println(e)
println(msg)
}
}
objPay
}
Run Code Online (Sandbox Code Playgroud)
但是使用美国运通和发现卡,它给了我以下例外:
EXCEPTION IN DO FINAL PAYMENT METHOD
com.paypal.core.rest.PayPalRESTException:Read timed out
Read timed out
Run Code Online (Sandbox Code Playgroud)
我正在使用这些库依赖......
"com.paypal.sdk" % "paypal-core" % "1.5.2",
"com.paypal.sdk" % "rest-api-sdk" % "0.7.1",
"com.paypal.sdk" % "invoicesdk" % "2.4.106",
"com.paypal.sdk" % "adaptivepaymentssdk" % "2.5.106",
"com.paypal.sdk" % "adaptiveaccountssdk" % "2.4.106",
"com.paypal.sdk" % "permissionssdk" % "2.3.106",
"com.stripe" % "stripe-java" % "1.7.1",
"com.sparkjava" % "spark-core" % "1.1.1",
"com.paypal.sdk" % "merchantsdk" % "2.1.96"
Run Code Online (Sandbox Code Playgroud)
美国运通卡和 Discover 有时处理时间较长。如果您使用 REST SDK 作为基础,则 http.connectiontimeout 变量设置为 30 秒。您应该将其增加到至少 60(如果仍然超时,则可能更高)。
在 Scala 中,您可以设置 http.setRequestTimeoutInMs(6000) 将超时增加到 60 秒。
SDK 示例包含一个用于设置 APIContext 的 bootstrap.php 文件。
// Use an ApiContext object to authenticate
// API calls. The clientId and clientSecret for the
// OAuthTokenCredential class can be retrieved from
// developer.paypal.com
$apiContext = new ApiContext(
new OAuthTokenCredential(
'...',
'...'
)
);
// #### SDK configuration
// Comment this line out and uncomment the PP_CONFIG_PATH
// 'define' block if you want to use static file
// based configuration
$apiContext->setConfig(
array(
'mode' => 'sandbox',
'http.ConnectionTimeOut' => 30,
'log.LogEnabled' => true,
'log.FileName' => '../PayPal.log',
'log.LogLevel' => 'FINE'
)
);
Run Code Online (Sandbox Code Playgroud)
http.ConnectionTimeOut 字段是您要查看的位置。将其设置为 60 或更高。
| 归档时间: |
|
| 查看次数: |
779 次 |
| 最近记录: |