【问题标题】:PayPal REST Api error: response 401 PPConnectionExceptionPayPal REST Api 错误:响应 401 PPConnectionException
【发布时间】:2013-08-04 03:16:41
【问题描述】:

我正在使用 PHP PayPal REST API 沙箱,但在执行 $payment->create( $apiContext ); 时出现错误

我的错误日志显示为:

    PHP Fatal error:  Uncaught exception 'PayPal\\Exception\\PPConnectionException' with message 

'Got Http response code 401 when accessing https://api.paypal.com/v1/oauth2/token. 
    Retried 0 times.' in /usr/local/web/servers/domain/guts/paypal_api/vendor/paypal/sdk-core-php/lib/PayPal/Core/PPHttpConnection.php:99\nStack trace:\n

#0 /usr/local/web/servers/domain/guts/paypal_api/lib/PayPal/Auth/OAuthTokenCredential.php(96): 
    PayPal\\Core\\PPHttpConnection->execute('grant_type=clie...')\n

#1 /usr/local/web/servers/domain/guts/paypal_api/lib/PayPal/Auth/OAuthTokenCredential.php(76): 
    PayPal\\Auth\\OAuthTokenCredential->_generateAccessToken(Array)\n

#2 /usr/local/web/servers/domain/guts/paypal_api/lib/PayPal/Rest/RestHandler.php(56): PayPal\\Auth\\OAuthTokenCredential->getAccessToken(Array)\n

#3 /usr/local/web/servers/domain/guts/paypal_api/vendor/paypal/sdk-core-php/lib/PayPal/Transport/PPRestCall.php(41): 
    PayPal\\Rest\\RestHandler->handle(Object(PayPal\\Core\\PPHttpConfig), '{"intent":"sale...', Array)\n

#4 /usr/local/web/servers/domain/guts/paypal_api/lib/PayPal/A in 
    /usr/local/web/servers/domain/guts/paypal_api/vendor/paypal/sdk-core-php/lib/PayPal/Core/PPHttpConnection.php on line 99, 
    referer: http://domain.com/products/basket/verify/

我的 PayPal.log 文件显示:

PayPal\Core\PPHttpConnection: Connecting to https://api.paypal.com/v1/oauth2/token
PayPal\Core\PPHttpConnection: Payload grant_type=client_credentials
PayPal\Core\PPHttpConnection: Adding header User-Agent: PayPalSDK/rest-sdk-php 0.6.0 (lang=PHP;v=5.3.3;bit=64;os=Linux_2.6.18-348.6.1.el5;machine=x86_64;openssl=0.9.8e-fips-rhel5;curl=7.15.5)
PayPal\Core\PPHttpConnection: Adding header Authorization: Basic QVpteVVCQ3VfdDhlb3QxcGx0UksyUG56Y3NhcXpOeXNIMlNDLXBDbTlUNGVGNDE3OFd1cFBFRmhkTVpnOkVGZ3g4UkNCZUppSkw3NW1JV1FDRFROTVVsanFOLW1fdlFuM3owMzZOZ3EwTUp3RVFwRkNlV0Z0dWhaag==
PayPal\Core\PPHttpConnection: Adding header Accept: */*

我已经尝试过测试抄送号码,在贝宝的沙盒网站上设置抄送号码。我已经尝试使用 rest-api-skd-php-master 中提供的演示应用程序中的凭据(演示工作顺便说一句)。

我可以向您展示我的代码,尽管它非常精确地模拟了测试用例。

我唯一能想到的是处理文件被埋在www访问级别以下?

如果您可以清除错误日志中的任何信息,我会全力以赴。如果您需要我提供更多信息,我可以提供。

【问题讨论】:

    标签: php rest oauth-2.0 paypal


    【解决方案1】:

    如果您打算使用第一行中所述的沙箱,那么错误正在发生,因为您正在调用生产 PayPal 服务器。

    改变 https://api.paypal.com/v1/oauth2/token

    https://api.sandbox.paypal.com/v1/oauth2/token

    【讨论】:

    • 我有一个开关说我是否使用某些 cc 号码来使用 dev 端点,但我使用的 cc 号码没有考虑在内。我的错。谢谢你的回复
    【解决方案2】:

    由于是 laravel 5.1 中的新功能,我遇到了同样的问题,对于贝宝,您需要将其设置为 /app/Http/controllers/paypalcontroller.php 中的沙箱,以及 /app/Ecommerce/Billing/paypal 中的贝宝详细信息.php。希望有帮助

    【讨论】:

      猜你喜欢
      • 2013-10-17
      • 1970-01-01
      • 2015-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 2017-10-20
      • 2013-07-20
      相关资源
      最近更新 更多