GET 請求獲取Request-URI所標識的資源 POST 在Request-URI所標識的資源后附加新的數據 HEAD 請求獲取由Request-URI所標識的資源的響應消息報頭 PUT 請求服務器存儲一個資源,并用Request-URI作為其標識 DELETE 請求服務器刪除Request-URI所標識的資源 TRACE 請求服務器回送收到的請求信息,主要用于測試或診斷 CONNECT 保留將來使用 OPTIONS 請求查詢服務器的性能,或者查詢與資源相關的選項和需求 但是使用代理后,從代理服務上得到的請求如下:
與第一張圖片對比一下,有什么不同......第一行的資源路徑不對。當瀏覽器上設置代理請求時把整個url都作為資源路徑了,所以我們要把域名刪掉,然后代理服務器在把修改后的請求發送給目標 web服務器。就這么簡單,當然CONNECT方法特別,要特別對待,所以先說其他方法。 基本的思路: 1、代理服務器運行監聽,當有客戶端瀏覽器請求到來時通過accept()獲得client句柄(或者叫描述符); 2、利用client描述符接收瀏覽器發來的request,分離出第一行為了修改第一行和獲得method, 要去掉的的部分,除去http://的部分用targetHost表示吧。 3、通過第2步能夠獲得方法method、request和targetHost,這一步可以根據不同的method做不同的處理, 由于GET、POET、PUT、DELETE等除了CONNECT處理基本一致,所以處理首行,比如: 代碼如下: GET http://www.a.com/ HTTP/1.1 替換為 GET / HTTP/1.1