http請求
請求分為三個部分:請求行、請求頭、請求資料
請求行請求方式(get/post等) 請求目錄,分層(/books/1.html) http協議版本(http/1.1),請求方式有:post get head options delete trace put。一般用get/post,get方式是通過『?引數』的形式在url裡面顯示,顯示直白。post方式則沒有引數顯示,適合比較大的資料傳送。
請求頭(客戶機環境)
一般的請求頭有:
accept:用於告訴伺服器客戶機支援的資料型別
accept-charset:用於告訴伺服器,客戶機採用的編碼
accept-encoding:用於告訴伺服器,客戶機支援的資料壓縮格式
accept-language:客戶機的語言環境(國際化語言,根據國家的不同而不同)
ua-cpu:作業系統平台
host:告訴伺服器想訪問的主機名
if-modified-since:告訴伺服器資源的快取時間
referer:告訴伺服器,客戶機是從哪個資源來訪問伺服器的(防盜煉)
user-agent:告訴伺服器客戶機的軟體環境
cookie:通過這個頭可以向伺服器帶一點資料
connection:說明這個請求之後斷開還是保持連線(close/keep-alive)
date:當前日期
range:續傳,值為"bytes=5-"表示第5個位元組後的內容,"bytes=1000"表示最後1000個位元組。
http響應
http響應分為三部分:狀態行、響應頭、實體內容
狀態行http版本號 狀態碼 原因敘述(crlf)
狀態碼:
100-199,表示成功接收請求,要求客戶端繼續提交下一次請求才能完成整個處理過程
200-299,表示成功接收請求並已完成整個處理過程常用200
300-399,表示未完成請求,客戶端需進一步細化請求。例如,請求的資源已經移動位址,常用30(伺服器讓客戶端去找別人)、307/304(讓客戶端去拿快取)
400-499,客戶端請求有錯誤,常用404(沒有該資源)、403(沒有許可權)
500-599,服務端出現錯誤,常用500
響應頭accept-range:告訴瀏覽器伺服器是否支持續傳,支援返回bytes,否則返回none(現在伺服器一般都支援)。
content-range:續傳內容大小。eg:content-range:1000-3000/5000,總大小5000,續傳1000到3000
響應資料
與HTTP協作的Web伺服器
http 1.1規範允許一台http伺服器搭建多個web站點。這是因為利用了虛擬主機 virtual host,又稱虛擬伺服器 的功能 即使物理層面只有一台伺服器,但只要使用虛擬主機的功能,則可以假想已具有多台伺服器。當一台伺服器內託管了多個網域名稱,當收到請求時就需要弄清楚究竟要訪問哪個網域名稱。...
與HTTP協作的Web伺服器
web伺服器一般指 伺服器,是指駐留於網際網路上某種型別計算機的程式,提供網上資訊瀏覽服務。可作為伺服器搭建多個不同網域名稱的 也可以作為通訊路徑中的中轉伺服器提公升傳輸速率。一台物理計算機上搭建多個不同網域名稱的 採用虛擬主機實現該用法。此時網域名稱,通過dns網域名稱解析後的ip是同乙個,由於虛...
web伺服器開發日記 HTTP請求及響應
http url url是一種特殊型別的uri,包含了用於查詢某個資源的足夠的資訊 的格式如下 http表示要通過http協議來定位網路資源 host表示合法的internet主機網域名稱或者ip位址 port指定乙個埠號,為空則使用預設埠 80 abs path指定請求資源的uri 如果url中沒...