38.http的幾種請求方法和區別
阿新 • • 發佈:2020-08-08
8 種請求方法
- OPTIONS:返回伺服器針對特定資源所支援的 HTTP 請求方法,也可以利用其向 web 伺服器傳送
*
的請求來測試伺服器的功能性。 - HEAD:向伺服器索與 GET 請求相一致的響應,只不過響應體將不會被返回。這一方法可以在不必傳輸整個響應內容的情況下,就可以獲取包含在響應小訊息頭中的元資訊。
- GET:向特定的資源發出請求,它的本質就是傳送一個請求來取得伺服器上的某一資源。
- POST:向指定資源提交資料進行處理請求(例如提交表單或者上傳檔案等)。資料被包含在請求體中。
- PUT:向指定資源位置上傳最新內容。
- DELETE:請求伺服器刪除 Request-URL 所表示的資源。
- TRACE:回顯伺服器收到的請求,主要用於測試或診斷。
- CONNECT:協議中預留給能夠將連線改為管道方式的代理伺服器。
三、GET 和 POST 區別?
首先, GET 和 POST 方法都是基於 TCP/IP 協議,也就是說,兩者的資料傳輸都是建立在 TCP 的連線,所以,如果從兩者的本質來講並沒有多大的區別,你非要給 GET 方法加上 request body,給 POST 方法加上 URL 引數都是行得通的,HTTP 協議對於 GET 和 POST 其實並沒有長度限制。
因而,兩者的區別更多地體現在使用規範上,從使用規範上來說:
- GET 瀏覽器回退是無害的,而 POST 會再次提交請求。
- GET 產生的 URL 地址可以被書籤收藏,並且被瀏覽器快取,而POST不能書籤收藏也不能快取。
- GET 只能進行 URL 編碼,而POST 支援多種編碼方式。
- GET 引數通過 URL 傳遞,並且長度有限制,而 POST 放在 request body 並且長度沒有限制。並且,正因為這個原因, GET 比 POST 更不安全,因為引數暴露在 URL 中。