php - Paypal 沙盒 curl NVP 请求失败 (DoExpressCheckoutPayment)

标签 php ssl curl paypal nvp

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

    $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);

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

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

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

最佳答案

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

关于php - Paypal 沙盒 curl NVP 请求失败 (DoExpressCheckoutPayment),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40406971/

相关文章:

javascript - 使用 cUrl 请求 svg.sencha.io 时出现错误请求

php - 区分单独键的重复条目

ios - 使用 ssl 的同步子类 NSURLConnection?

java - 如何在 Java 中为现有的 REST 服务实现 SSL?

php - 下载图像 URL - PHP

PHP:使用fopen检查图像文件是否存在

php - 当我在网站上连接时,centos Redhat 上的 Apache Web 服务器加载时间很长

php - 学说一对一关系映射

php - 使用 Guzzle 6 将文件上传到 API 端点

python-2.7 - 使用 tools.run_flow() 在 Google Sheets API 教程中引发 SSLHandshake "certificate verify"错误