1. GET 獲取資源: 用來請求訪問已被 URI 識別的資源,指定的資源經(jīng)服務(wù)器端解析后返回響應(yīng)內(nèi)容。
如果請求的資源是文本,那就保持原樣返回;如果是像 CGI(Common Gateway Interface,通用網(wǎng)關(guān)接口)那樣的程序,則返回經(jīng)過執(zhí)行后的輸出結(jié)果。
2. POST 傳輸實體主體: 用來傳輸實體的主體
雖然用 GET 方法也可以傳輸實體的主體,但一般不用 GET 方法進行傳輸,而是用 POST 方法。雖說 POST 的功能與 GET 很相似,但 POST 的主要目的并不是獲取響應(yīng)的主體內(nèi)容。
3. PUT 傳輸文件: 在請求報文的主體中包含文件內(nèi)容,然后保存到請求 URI 指定的位置
鑒于 HTTP1.1 的 PUT 方法自身不帶驗證機制,任何人都可以上傳文件 , 存在安全性問題,因此一般的 Web 網(wǎng)站不使用該方法。
4. HEAD 獲得報文首部: 和 GET 方法一樣,只是不返回報文主體部分。
用于確認(rèn) URI 的有效性及資源更新的日期時間等。
5. DELETE 刪除文件: 用來刪除文件,是與 PUT 相反的方法。DELETE 方法按請求 URI 刪除指定的資源。
HTTP1.1 的 DELETE 方法本身和 PUT 方法一樣不帶驗證機制,所以一般的 Web 網(wǎng)站也不使用 DELETE 方法。
6. OPTIONS 詢問支持的方法: 用來查詢針對請求 URI 指定的資源支持的方法。
7. TRACE 追蹤路徑: 讓 Web 服務(wù)器端將之前的請求通信環(huán)回給客戶端的方法。
發(fā)送請求時,在 Max-Forwards 首部字段中填入數(shù)值,每經(jīng)過一個服務(wù)器端就將該數(shù)字減 1,當(dāng)數(shù)值剛好減到 0 時,就停止繼續(xù)傳輸,最后接收到請求的服務(wù)器端則返回狀態(tài)碼 200 OK 的響應(yīng)。
但 TRACE 方法本來就不怎么常用,再加上它容易引發(fā) XST(Cross-Site Tracing,跨站追蹤)攻擊,通常就更不會用到了。
8. CONNECT 要求用隧道協(xié)議連接代理: 要求在與代理服務(wù)器通信時建立隧道,實現(xiàn)用隧道協(xié)議進行 TCP 通信
主要使用 SSL(Secure Sockets Layer,安全套接層)和 TLS(Transport Layer Security,傳輸層安全)協(xié)議把通信內(nèi)容加 密后經(jīng)網(wǎng)絡(luò)隧道傳輸。
| 方法 | 說明 | 支持的 HTTP 協(xié)議版本 |
|---|---|---|
| GET | 獲取資源 | 1.0、1.1 |
| POST | 傳輸實體主體 | 1.0、1.1 |
| PUT | 傳輸文件 | 1.0、1.1 |
| HEAD | 獲得報文首部 | 1.0、1.1 |
| DELETE | 刪除文件 | 1.0、1.1 |
| OPTIONS | 詢問支持的方法 | 1.1 |
| TRACE | 追蹤路徑 | 1.1 |
| CONNECT | 要求用隧道協(xié)議連接代理 | 1.1 |
| LINK | 建立和資源之間的聯(lián)系 | 1.0 |
| UNLINE | 斷開連接關(guān)系 | 1.0 |