php - 使用 php curl 对 paypal api 没有响应
问题描述
我正在尝试从 PayPal api 获取有关使用 php 和 cURL 的订单的响应。这是我的代码,我当然已经替换了令牌,这不是这里的问题。使用以下命令,我的终端中一切正常,我不明白为什么它不起作用。(如果我做 a var_dump($response)
,我得到string(0) ""
.
代码 :
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://api-m.sandbox.paypal.com/v2/checkout/orders/".$_GET['transacid']);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = [
"Content-Type: application/json",
"Authorization: Bearer my_oauth_token"
];
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response= curl_exec($ch);
curl_close($ch);
var_dump($response);
而且,CLI 命令:
curl -v -X GET https://api-m.sandbox.paypal.com/v2/checkout/orders/my_order_id\
-H "Content-Type: application/json" \
-H "Authorization: Bearer my_oauth_token"
我想我可以使用 exec() 获得结果,但它确实不干净,尤其是使用 GET 变量。
谢谢 !
解决方案
(发表评论后作为答案发布)
只是一个可能不相关的评论,但在终端中,您正在执行 GET 请求,而在 php 端您正在执行 POST 请求(参见设置为 1 的 CURLOPT_POST)。因此,您还没有执行相同类型的请求。首先这样做,然后如果需要,我们可以进一步排除故障。最终,这可能是导致您的问题的唯一原因。
推荐阅读
- python - 如何遍历 CSV 文件中的第一列?
- google-analytics - 坚持通过 GTM 添加 GA 标准电子商务交易
- primefaces - 如何显示 inputtext 的剩余字符?
- java - 在 JTabbedPane 中的错误 JPanel 上显示的 Swing 组件
- reactjs - React - 在我的情况下如何调用弹出窗口?
- linux - Bash 内置的“历史”可以执行,但不在 $PATH 中
- css - 如果项目很少,如何限制网格容器的宽度,但如果有很多则拉伸以填充父项?
- java - 对于 java I/OI 正在从文件中读取,但是当我获取数据并尝试将其发送到另一个方法时,它给了我一个空指针错误
- javascript - 为什么 Array.prototype.map 会忽略稀疏数组中的空槽,而 Array.prototype.join 不会?
- python-3.x - 灵活的参数化查询