所以我顯然已經用谷歌搜索了錯誤 - 但 PHP (PHP 7.4.4 (cli)) curl 給了我錯誤:Curl error: operation aborted by callback使用以下代碼:private function curl_post($url,$post,$file = null,$file_type = 'audio/wav'){ $ch = curl_init($url); if (!empty($file)){ $post['SoundFile'] = new CURLFile(UPLOAD_PATH.$file,$file_type,$file); } // Assign POST data curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_POSTFIELDS,$post); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); if(curl_errno($ch)) echo 'Curl error: '.curl_error($ch); curl_close($ch); print'<pre>Curl (rec): '."\n";print_r($result);print'</pre>';}我控制了兩臺(Ubuntu)服務器并重新啟動了它們。我發布了相當大量的數據,但在谷歌搜索中這似乎并不是觸發curl_error的原因。有誰知道是什么原因造成的?它was工作得很好,然后就停止了。另外,file_put_contents(time().'.txt','log');在我的接收服務器中作為中斷確實會記錄響應。所以它顯然落在了正確的區域。另外,我要說的是,兩臺服務器通過curl 彼此進行多次對話(因此一臺服務器卷曲到另一臺服務器,然后返回一點)。此外 - 錯誤 42 是 CURL 響應,但https://curl.haxx.se/libcurl/c/libcurl-errors.html似乎沒有提供太多幫助。我嘗試過跟蹤彼此之間的各種調用,但看不出它為什么會中斷 - 它在發布/調用發生之前就出現錯誤/中斷。
1 回答

白衣染霜花
TA貢獻1796條經驗 獲得超10個贊
所以我找到了答案,我希望這對處于這種情況的其他人有所幫助。原因是因為該文件在服務器上丟失CURLFile
(以前就在那里)。我的代碼現在是這樣的:
if (!empty($file) && is_file(UPLOAD_PATH.$file)){ $post['SoundFile'] = new CURLFile(UPLOAD_PATH.$file,$file_type,$file); }
這不再產生錯誤。關鍵是它甚至在提交帖子之前就出錯了,但錯誤本身并沒有多大幫助,直到我在單獨的測試腳本中將其分解并將文件元素添加回來。
- 1 回答
- 0 關注
- 565 瀏覽
添加回答
舉報
0/150
提交
取消