我們有一個與分銷商合作的 API。我們的軟體在 PHP 7.3.6 / Apache 2.4.38 下運行 我們已經成功完成了一些其他操作:創建新的采購訂單、檢索訂單……我們在檢索發票時遇到了問題。我們在 API 測驗中使用了一個名為 POSTMAN 的軟體。我們輸入所有資訊(api 密鑰,....)使用 POSTMAN,它可以完美運行。POSTMAN 中有一個選項可以獲取不同語言的代碼。為了我們的需要,我們采用了 PHP 生成的代碼。問題是它不起作用。我們還使用了https://reqbin.com/curl,它運行良好。但同樣的問題,PHP 中生成的代碼不起作用。
例如,在郵遞員或 reqbin 中,此 CURL 代碼有效
curl -X GET https://url.com/Invoices?startDate="01-01-2019"&endDate="01-31-2023" \
-H 'Accept: application/json' \
-H 'Authorization: Bearer generatedtokenzzzzzzzzzzzzzzzzzzzzzzzzzzz' \
-H 'Content-Type: application/json' \
-H 'zzzzzzzzz-API-Key: generatedapikeyzzzzzzzzzzzzzz'
當我們點擊生成 PHP 代碼時,我們有以下代碼:
<?php
$url = "https://url.com/Invoices?startDate="01-01-2019"&endDate="01-31-2023";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$headers = array(
"Accept: application/json",
"Authorization: Bearer generatedtokenzzzzzzzzzzzzzzzzzzzzzzzzzzz",
"Content-Type: application/json",
"zzzzzzzzz-API-Key: generatedapikeyzzzzzzzzzzzzzz",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
//for debug only!
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($curl);
curl_close($curl);
var_dump($resp);
?>
因為它不起作用,我們嘗試添加一些選項,例如
CURLOPT_CUSTOMREQUEST => 'GET',
它仍然不起作用。
我們快瘋了,我們在這個問題上待了一個多星期......
任何幫助都會非常有用。
非常感謝提前....
uj5u.com熱心網友回復:
我們找到了錯誤。它不在此代碼的一部分,但在上面。引數未正確傳遞,錯誤訊息 {message": "list index out of range} 實際上是錯誤的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/422924.html
標籤:
上一篇:無法將值變數轉換為CurlPhp
