GET 和 POST
GET:獲取資源。
POST:傳輸實體主體。
對比:
- 都能使用額外的參數(shù),但是 GET 的參數(shù)是以查詢字符串出現(xiàn)在 URL 中,而 POST 的參數(shù)存儲在實體主體。
- GET 的傳參方式比 POST 安全性較差,因為 GET 傳的參數(shù)在 URL 中是可見的。
- GET 只支持 ASCII 字符,如果參數(shù)為中文則可能會出現(xiàn)亂碼,而 POST 支持標(biāo)準(zhǔn)字符集。
HEAD
獲取報文首部
與 GET 方法相比,響應(yīng)不返回報文實體。
主要用于確認(rèn) URL 的有效性以及資源更新的日期時間等。
PUT 和 DELETE
PUT:上傳文件
DELETE:刪除文件
相同點:不帶驗證機制,任何人都可以上傳或刪除,存在安全性問題,一般不使用。
PATCH
對資源進行修改
OPTIONS
查詢指定的 URL 能夠支持的方法
返回格式 Allow: GET, POST, HEAD, OPTIONS
CONNECT
先用 CONNECT 方法與代理服務(wù)器通信,要求建立隧道。
然后通過隧道與目標(biāo)服務(wù)器通信。使用 SSL(Secure Sokets Layer,安全套接字)和 TLS(Transport Layer Security,傳輸層安全)協(xié)議把通信內(nèi)容加密后經(jīng)網(wǎng)絡(luò)隧道傳輸。
TRACE
服務(wù)器會將通信路徑返回給客戶端。
每經(jīng)過一個服務(wù)器,首部字段 Max-Forwards 就會減 1,當(dāng)數(shù)值為 0 時就停止傳輸。
通常不會使用 TRACE,并且它容易受到 XST 攻擊(Cross-Site Tracing,跨站追蹤)