Contents

如何限制curl請求時間

當涉及到發出網路請求時,時機至關重要。沒有人喜歡“緩慢地等待”w“bpag”加載或s“rv”回應。如果您使用curl從網路獲取數據,您會很高興知道有一些方法可以限制請求所花費的時間。

為了維持對資料檢索活動的控制措施,建議對 cURL 請求的持續時間施加限制。這可以透過為每個單獨的請求設定特定的時間限制並確保其不超過此限制來實現。透過這樣做,可以有效地調節透過 cURL 獲取資料所花費的時間,並避免因資料傳輸時間過長或其他相關問題而引起的潛在問題。

方法 1:使用 –max-time 選項

在執行「curl」指令時,可以使用「-m」或「–max-time」選項對請求施加嚴格的時間限制。此配置允許指定允許命令運行的最大持續時間(以秒為單位),然後突然終止並產生表示逾時錯誤 (28) 的退出代碼。

 curl --max-timе [sеconds] [URL] 

小數精度允許以比整數值更高的精度指定最大值。例如,設定最大時間限制 0.3 秒相當於 300 毫秒,而最大時間限制 5.46 秒相當於 5,460 毫秒。同樣,20 秒的最大時間限制可以精確地定義為 20 秒。

例如:

 curl -o test.md --max-time 30 https://github.com/test/file1 

/bc/images/using-maxtime-seconds-on-ubuntu.jpg

此指令向提供的 GitHub 連結發送查詢。回覆訊息保存在test.md中,操作最多在三十秒內結束。

方法 2:使用 –connect-timeout 選項

若要調節 cURL 專用於嘗試與特定主機建立連線的持續時間,請使用「–connect-timeout」選項。此參數對分配給捲曲形成成功連接所需的各個階段的總時間設定了上限,其中包括以下過程:

如果 libcurl 函式庫未能在預定的時間限制內發起連接,它將產生與逾時發生相對應的錯誤代碼 (28)。

 curl --connect-timeout [seconds] [URL] 

例如:

 curl -o test.md --connect-time 20 https://github.com/test/file 

/bc/images/using-connect-timeout-seconds-on-ubuntu.jpg

使用curl命令,該實作下載嵌入在所提供的URL中的內容並將其儲存為名為「test.md」的檔案。此外,它對創建與遠端伺服器的連接所需的持續時間施加了二十秒的嚴格限制。

控制 Curl 請求以實現快速檢索

在當今快節奏的環境中,生產力和效率至關重要,能夠管理 cURL 請求的持續時間可能會非常有利。透過利用“-connect-timeout”或“-max-time”選項,人們可以控制其資料檢索操作。因此,隨著簡化且監管良好的網路查詢成為新規範,將不再浪費時間。

當接下來面臨等待捲曲請求完成的單調乏味時,請考慮採用此處詳細介紹的技術,以便斷言對過程的控制,並為原本平凡的任務帶來一種目的感。