1
我正在使用libcurl從客戶端下載一些文件到服務器。我已在我的捲曲連接下列選項中,cURL超時問題
curl_easy_setopt(curlPtr, CURLOPT_LOW_SPEED_LIMIT, 1);
curl_easy_setopt(curlPtr, CURLOPT_LOW_SPEED_TIME, 360);
curl_easy_setopt(curlPtr, CURLOPT_IGNORE_CONTENT_LENGTH, 1);
curl_easy_setopt(curlPtr, CURLOPT_TCP_NODELAY, 1);
即使我已經設定了,如果6分鐘(360秒),操作被超時就算我收到的響應沒有收到字節時間,
這是我從該接收到的捲曲調試響應,
- 操作超時後360000毫秒205512個字節接收
- 截止連接#0
- 超時達到
我已經重定向到文件的響應,我可以確認的響應字節。但是,操作在達到6分鐘後仍然會超時。
任何人都可以幫助我在上面有什麼我錯了嗎?
注意我正在使用libcurl 7.19.3。我不能立即升級,但我們有計劃升級到最新的穩定版本。
感謝, Prabu
服務器可能會爲您計時並關閉連接(您可以在客戶端上做些什麼來阻止連接)。如果沒有數據流向服務器,服務器會斷開連接(攻擊者可能會啓動DOS攻擊,並最終使用所有可用連接最終打開許多與服務器的連接),這將是一個安全漏洞。 –
你會得到任何HTTP代碼> –
PS:傳遞給curl_easy_setopt的大多數(整數)值應該是long。你正在傳遞整數。這可能是未來的一個問題。使用'curl_easy_setopt(curlPtr,CURLOPT_LOW_SPEED_TIME,360L);' –