Http

如果我發送 HTTP GET 請求,我會收到 GET 響應嗎?

  • July 17, 2017

這可能是一個非常基本的問題,所以請原諒我的無知

伺服器使用哪種方法來響應它收到的請求?

我正在製作一個網路應用程序,並且有一條特定的路線返回一個大(比如 .iso 圖像)文件。因此,當使用者點擊下載按鈕時,我會讓 JavaScript 請求帶有{method: "GET"}.

當下載開始在使用者的機器上時,哪個 HTTP 方法伺服器正在使用發送文件?

我真的很困惑:

  • 伺服器上傳使用者下載是如何處理的?
  • 對於大文件,它預設為 POST 嗎?
  • 作為一名程序員,我如何確保我的最終使用者可以輕鬆(可恢復)下載?

伺服器使用者使用哪種方法來響應它收到的請求?

HTTP是請求-響應協議。無論您使用哪種 HTTP 方法(GET、POST、HEAD 等)向伺服器發出請求,伺服器始終以相同的方式響應(與您的請求方法無關);當然,響應內容會根據您的要求而更改。

所以沒有 POST 或 GET 響應之類的東西。

伺服器上傳使用者下載是如何處理的?

將文件上傳到伺服器/服務時,您發送的請求包含文件本身,HTTP 協議建議應該使用 POST 請求發送數據。

從伺服器下載文件時,伺服器會在響應中向您發送文件。請求遠端文件時應使用 GET 請求,因為 GET 被定義為用於檢索資源的命令。此外,正在發送的數據類型在請求和響應的標頭部分中指定為Content-Type.

請注意,您可以使用 GET 上傳文件,將整個文件填充到 URL 中,或者下載響應 POST 請求的文件。然而,這些是非標準應用程序並且有限制(例如,對 URL 的最大長度的限制),您還需要在伺服器端處理這些請求上做更多的工作。

對於大文件,它是否預設為 POST?

這應該已經回答了 - 伺服器不會向您發送任何 POST 或 GET,只是響應。

作為一名程序員,我如何確保我的最終使用者可以輕鬆(可恢復)下載?

這將取決於所使用的伺服器端和客戶端技術。現代瀏覽器和正確配置的 Web 伺服器通常可以自動恢復現有文件的下載。但是,如果您在伺服器上手動建構文件響應,您還需要手動處理下載恢復。請參閱此答案以使用 PHP 實現。

引用自:https://serverfault.com/questions/862383