【问题标题】:Paypal sandbox curl NVP request fails (DoExpressCheckoutPayment)Paypal 沙箱 curl NVP 请求失败 (DoExpressCheckoutPayment)
【发布时间】:2017-03-17 08:39:20
【问题描述】:

我的项目中有以下代码行:

    $queryString = http_build_query($data);
    $hCurl = $this->_setApiEndpoint($queryString);

    $headers = array('Content-type: multipart/form-data');
    curl_setopt($hCurl, CURLOPT_HTTPHEADER, $headers);
    //turning off the server and peer verification(TrustManager Concept).
    curl_setopt($hCurl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($hCurl, CURLOPT_SSL_VERIFYHOST, false);

    curl_setopt($hCurl, CURLOPT_RETURNTRANSFER, 1);
    $response = curl_exec($curl);

    parse_str($response, $result);

这是我们的贝宝集成。我们使用不同的 API 端点,一切正常。此代码正在生产中并且正在运行。但是只有一种方法在沙箱中不起作用(DoExpressCheckoutPayment)。我已经认为这是沙箱中的一个错误,但是 curl_error 和 curl_errno 打印了一个错误,我也用 Postman 进行了尝试,它成功了。

curl_errno = 56
curl_error = SSL read: error:00000000:lib(0):func(0):reason(0), errno 104

请求在 docker 机器内触发,我们使用 https 本地。谢谢大家的帮助。

【问题讨论】:

    标签: php ssl curl paypal nvp


    【解决方案1】:

    我找到了解决方案。您应该使用 POST 而不是 GET。当然,PayPal 文档中的任何地方都没有提到这一点。错误消息也很神秘。

    【讨论】:

      猜你喜欢
      • 2016-04-28
      • 2010-12-19
      • 2013-04-17
      • 1970-01-01
      • 2017-12-16
      • 2016-12-13
      • 1970-01-01
      • 2013-07-09
      相关资源
      最近更新 更多