當(dāng)時用curl進(jìn)行訪問接口時,有的時候無返回值慕蔚,這時就需要進(jìn)行測試,可以使用curl_getinfo或者curl_errno函數(shù),下面的錯誤碼是打印curl_errno顯示出來的數(shù)字對應(yīng)的錯誤碼值
代碼如下:
$oCurl = curl_init ();
if (stripos ( $url, "https://" ) !== FALSE) {
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );
curl_setopt ( $oCurl, CURLOPT_SSLVERSION, 1 ); // CURL_SSLVERSION_TLSv1
}
$strPOST = json_encode(array('olds'=>array('10000000')));
$header = array(
"Content-Type:application/json",
'appSecret:'.$conf['appSecret'],
);
curl_setopt($oCurl, CURLOPT_HTTPHEADER , $header);
curl_setopt ( $oCurl, CURLOPT_URL, $url );
curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $oCurl, CURLOPT_POST, true );
curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $strPOST );
$sContent = curl_exec ( $oCurl );
$aStatus = curl_getinfo ( $oCurl );
$err_code = curl_errno($oCurl);
curl_close ( $oCurl );
$sContent = json_decode($sContent,true);
dd($err_code);
'1'=>'CURLE_UNSUPPORTED_PROTOCOL (1) – 您傳送給 libcurl 的網(wǎng)址使用了此 libcurl 不支持的協(xié)議戴差。 可能是您沒有使用的編譯時選項造成了這種情況(可能是協(xié)議字符串拼寫有誤,或沒有指定協(xié)議 libcurl 代碼)铛嘱。',
'2'=>'CURLE_FAILED_INIT (2) – 非常早期的初始化代碼失敗暖释。 可能是內(nèi)部錯誤或問題。',
'3'=>'CURLE_URL_MALFORMAT (3) – 網(wǎng)址格式不正確墨吓。',
'5'=>'CURLE_COULDNT_RESOLVE_PROXY (5) – 無法解析代理服務(wù)器球匕。 指定的代理服務(wù)器主機(jī)無法解析。',
'6'=>'CURLE_COULDNT_RESOLVE_HOST (6) – 無法解析主機(jī)帖烘。 指定的遠(yuǎn)程主機(jī)無法解析亮曹。',
'7'=>'CURLE_COULDNT_CONNECT (7) – 無法通過 connect() 連接至主機(jī)或代理服務(wù)器。',
'8'=>'CURLE_FTP_WEIRD_SERVER_REPLY (8) – 在連接到 FTP 服務(wù)器后,libcurl 需要收到特定的回復(fù)照卦。 此錯誤代碼表示收到了不正呈浇茫或不正確的回復(fù)。 指定的遠(yuǎn)程服務(wù)器可能不是正確的 FTP 服務(wù)器役耕。',
'9'=>'CURLE_REMOTE_ACCESS_DENIED (9) – 我們無法訪問網(wǎng)址中指定的資源采转。 對于 FTP,如果嘗試更改為遠(yuǎn)程目錄瞬痘,就會發(fā)生這種情況故慈。',
'11'=>'CURLE_FTP_WEIRD_PASS_REPLY (11) – 在將 FTP 密碼發(fā)送到服務(wù)器后,libcurl 需要收到正確的回復(fù)图云。 此錯誤代碼表示返回的是意外的代碼惯悠。',
'13'=>'CURLE_FTP_WEIRD_PASV_REPLY (13) – libcurl 無法從服務(wù)器端收到有用的結(jié)果,作為對 PASV 或 EPSV 命令的響應(yīng)竣况。 服務(wù)器有問題克婶。',
'14'=>'CURLE_FTP_WEIRD_227_FORMAT (14) – FTP 服務(wù)器返回 227 行作為對 PASV 命令的響應(yīng)。如果 libcurl 無法解析此行丹泉,就會返回此代碼情萤。',
'15'=>'CURLE_FTP_CANT_GET_HOST (15) – 在查找用于新連接的主機(jī)時出現(xiàn)內(nèi)部錯誤。',
'17'=>'CURLE_FTP_COULDNT_SET_TYPE (17) – 在嘗試將傳輸模式設(shè)置為二進(jìn)制或 ascii 時發(fā)生錯誤摹恨。',
'18'=>'CURLE_PARTIAL_FILE (18) – 文件傳輸尺寸小于或大于預(yù)期筋岛。當(dāng)服務(wù)器先報告了一個預(yù)期的傳輸尺寸,然后所傳送的數(shù)據(jù)與先前指定尺寸不相符時晒哄,就會發(fā)生此錯誤睁宰。',
'19'=>'CURLE_FTP_COULDNT_RETR_FILE (19) – ‘RETR’ 命令收到了不正常的回復(fù),或完成的傳輸尺寸為零字節(jié)寝凌。',
'21'=>'CURLE_QUOTE_ERROR (21) – 在向遠(yuǎn)程服務(wù)器發(fā)送自定義 “QUOTE” 命令時柒傻,其中一個命令返回的錯誤代碼為 400 或更大的數(shù)字(對于 FTP),或以其他方式表明命令無法成功完成较木。',
'22'=>'CURLE_HTTP_RETURNED_ERROR (22) – 如果 CURLOPT_FAILONERROR 設(shè)置為 TRUE红符,且 HTTP 服務(wù)器返回 >= 400 的錯誤代碼,就會返回此代碼伐债。 (此錯誤代碼以前又稱為 CURLE_HTTP_NOT_FOUND预侯。)',
'23'=>'CURLE_WRITE_ERROR (23) – 在向本地文件寫入所收到的數(shù)據(jù)時發(fā)生錯誤,或由寫入回調(diào) (write callback) 向 libcurl 返回了一個錯誤峰锁。',
'25'=>'CURLE_UPLOAD_FAILED (25) – 無法開始上傳萎馅。 對于 FTP,服務(wù)器通常會拒絕執(zhí)行 STOR 命令虹蒋。錯誤緩沖區(qū)通常會提供服務(wù)器對此問題的說明校坑。 (此錯誤代碼以前又稱為 CURLE_FTP_COULDNT_STOR_FILE拣技。)',
'26'=>'CURLE_READ_ERROR (26) – 讀取本地文件時遇到問題,或由讀取回調(diào) (read callback) 返回了一個錯誤耍目。',
'27'=>'CURLE_OUT_OF_MEMORY (27) – 內(nèi)存分配請求失敗膏斤。此錯誤比較嚴(yán)重,若發(fā)生此錯誤邪驮,則表明出現(xiàn)了非常嚴(yán)重的問題莫辨。',
'28'=>'CURLE_OPERATION_TIMEDOUT (28) – 操作超時。 已達(dá)到根據(jù)相應(yīng)情況指定的超時時間毅访。',
'30'=>'CURLE_FTP_PORT_FAILED (30) – FTP PORT 命令返回錯誤沮榜。 在沒有為 libcurl 指定適當(dāng)?shù)牡刂肥褂脮r,最有可能發(fā)生此問題喻粹。 請參閱 CURLOPT_FTPPORT蟆融。',
'31'=>'CURLE_FTP_COULDNT_USE_REST (31) – FTP REST 命令返回錯誤。如果服務(wù)器正常守呜,則應(yīng)當(dāng)不會發(fā)生這種情況型酥。',
'33'=>'CURLE_RANGE_ERROR (33) – 服務(wù)器不支持或不接受范圍請求。',
'34'=>'CURLE_HTTP_POST_ERROR (34) – 此問題比較少見查乒,主要由內(nèi)部混亂引發(fā)弥喉。',
'35'=>'CURLE_SSL_CONNECT_ERROR (35) – 同時使用 SSL/TLS 時可能會發(fā)生此錯誤。您可以訪問錯誤緩沖區(qū)查看相應(yīng)信息玛迄,其中會對此問題進(jìn)行更詳細(xì)的介紹由境。可能是證書(文件格式蓖议、路徑虏杰、許可)、密碼及其他因素導(dǎo)致了此問題勒虾。',
'36'=>'CURLE_FTP_BAD_DOWNLOAD_RESUME (36) – 嘗試恢復(fù)超過文件大小限制的 FTP 連接纺阔。',
'37'=>'CURLE_FILE_COULDNT_READ_FILE (37) – 無法打開 FILE:// 路徑下的文件。原因很可能是文件路徑無法識別現(xiàn)有文件从撼。 建議您檢查文件的訪問權(quán)限州弟。',
'38'=>'CURLE_LDAP_CANNOT_BIND (38) – LDAP 無法綁定钧栖。LDAP 綁定操作失敗低零。',
'39'=>'CURLE_LDAP_SEARCH_FAILED (39) – LDAP 搜索無法進(jìn)行。',
'41'=>'CURLE_FUNCTION_NOT_FOUND (41) – 找不到函數(shù)拯杠。 找不到必要的 zlib 函數(shù)掏婶。',
'42'=>'CURLE_ABORTED_BY_CALLBACK (42) – 由回調(diào)中止。 回調(diào)向 libcurl 返回了 “abort”潭陪。',
'43'=>'CURLE_BAD_FUNCTION_ARGUMENT (43) – 內(nèi)部錯誤雄妥。 使用了不正確的參數(shù)調(diào)用函數(shù)最蕾。',
'45'=>'CURLE_INTERFACE_FAILED (45) – 界面錯誤。 指定的外部界面無法使用老厌。 請通過 CURLOPT_INTERFACE 設(shè)置要使用哪個界面來處理外部連接的來源 IP 地址瘟则。 (此錯誤代碼以前又稱為 CURLE_HTTP_PORT_FAILED。)',
'47'=>'CURLE_TOO_MANY_REDIRECTS (47) – 重定向過多枝秤。 進(jìn)行重定向時醋拧,libcurl 達(dá)到了網(wǎng)頁點擊上限。請使用 CURLOPT_MAXREDIRS 設(shè)置上限淀弹。',
'48'=>'CURLE_UNKNOWN_TELNET_OPTION (48) – 無法識別以 CURLOPT_TELNETOPTIONS 設(shè)置的選項丹壕。 請參閱相關(guān)文檔。',
'49'=>'CURLE_TELNET_OPTION_SYNTAX (49) – telnet 選項字符串的格式不正確薇溃。',
'51'=>'CURLE_PEER_FAILED_VERIFICATION (51) – 遠(yuǎn)程服務(wù)器的 SSL 證書或 SSH md5 指紋不正確菌赖。',
'52'=>'CURLE_GOT_NOTHING (52) – 服務(wù)器未返回任何數(shù)據(jù),在相應(yīng)情況下沐序,未返回任何數(shù)據(jù)就屬于出現(xiàn)錯誤琉用。',
'53'=>'CURLE_SSL_ENGINE_NOTFOUND (53) – 找不到指定的加密引擎。',
'54'=>'CURLE_SSL_ENGINE_SETFAILED (54) – 無法將選定的 SSL 加密引擎設(shè)為默認(rèn)選項薄啥。',
'55'=>'CURLE_SEND_ERROR (55) – 無法發(fā)送網(wǎng)絡(luò)數(shù)據(jù)辕羽。',
'56'=>'CURLE_RECV_ERROR (56) – 接收網(wǎng)絡(luò)數(shù)據(jù)失敗。',
'58'=>'CURLE_SSL_CERTPROBLEM (58) – 本地客戶端證書有問題',
'59'=>'CURLE_SSL_CIPHER (59) – 無法使用指定的密鑰',
'60'=>'CURLE_SSL_CACERT (60) – 無法使用已知的 CA 證書驗證對等證書',
'61'=>'CURLE_BAD_CONTENT_ENCODING (61) – 無法識別傳輸編碼',
'62'=>'CURLE_LDAP_INVALID_URL (62) – LDAP 網(wǎng)址無效',
'63'=>'CURLE_FILESIZE_EXCEEDED (63) – 超過了文件大小上限',
'64'=>'CURLE_USE_SSL_FAILED (64) – 請求的 FTP SSL 級別失敗',
'65'=>'CURLE_SEND_FAIL_REWIND (65) – 進(jìn)行發(fā)送操作時垄惧,curl 必須回轉(zhuǎn)數(shù)據(jù)以便重新傳輸刁愿,但回轉(zhuǎn)操作未能成功',
'66'=>'CURLE_SSL_ENGINE_INITFAILED (66) – SSL 引擎初始化失敗',
'67'=>'CURLE_LOGIN_DENIED (67) – 遠(yuǎn)程服務(wù)器拒絕 curl 登錄(7.13.1 新增功能)',
'68'=>'CURLE_TFTP_NOTFOUND (68) – 在 TFTP 服務(wù)器上找不到文件',
'69'=>'CURLE_TFTP_PERM (69) – 在 TFTP 服務(wù)器上遇到權(quán)限問題',
'70'=>'CURLE_REMOTE_DISK_FULL (70) – 服務(wù)器磁盤空間不足',
'71'=>'CURLE_TFTP_ILLEGAL (71) – TFTP 操作非法',
'72'=>'CURLE_TFTP_UNKNOWNID (72) – TFTP 傳輸 ID 未知',
'73'=>'CURLE_REMOTE_FILE_EXISTS (73) – 文件已存在,無法覆蓋',
'74'=>'CURLE_TFTP_NOSUCHUSER (74) – 運行正常的 TFTP 服務(wù)器不會返回此錯誤',
'75'=>'CURLE_CONV_FAILED (75) – 字符轉(zhuǎn)換失敗',
'76'=>'CURLE_CONV_REQD (76) – 調(diào)用方必須注冊轉(zhuǎn)換回調(diào)',
'77'=>'CURLE_SSL_CACERT_BADFILE (77) – 讀取 SSL CA 證書時遇到問題(可能是路徑錯誤或訪問權(quán)限問題)',
'78'=>'CURLE_REMOTE_FILE_NOT_FOUND (78) – 網(wǎng)址中引用的資源不存在',
'79'=>'CURLE_SSH (79) – SSH 會話中發(fā)生無法識別的錯誤',
'80'=>'CURLE_SSL_SHUTDOWN_FAILED (80) – 無法終止 SSL 連接'