HTTP協議介紹
- 超文本傳輸協議
- 將服務器上的文件通過協議傳輸到另一臺主機上
特點
- 簡潔、快速
- 客戶想服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有:
GET
、HEAD
、POST
- 客戶想服務器請求服務時,只需傳送請求方法和路徑。請求方法常用的有:
- 靈活
- 允許任意類型的數據對象
- 無連接
- 無連接的含義是限制每次連接只處理一個請求。服務器處理完客戶的請求,並受到客戶的應答後,即斷開連接。節省傳輸時間。
- 無狀態
- 協議對於事物處理沒有記憶能力
HTTP報文
- 分爲四個部分
- 通用頭
- 請求頭
- 應答頭
- 實體頭
URL
- 協議
- http
- https
- 域名、IP地址
- 路徑及文件名
HTTP請求方法
GET
請求指定頁面信息,並返回實體主體HEAD
類似GET請求,返回的響應中沒有具體的內容,用於獲取報頭POST 向指定資源提交數據進行處理請求,數據被包含在請求當中,POST請求新的資源建立-
或已有資源修改PUT
向服務器傳遞一個內容DELETE
請求服務器刪除指定頁面CONNECT
HTTP/1.1協議中預留給能夠將連接改爲管道方式的代理服務器OPINIONS
允許客戶端查看服務器的性能TRACE
回顯服務器收到的請求,用於測試或診斷PATCH
是對PUT方法的補充,用於對已知資源進行局部更新
GET請求
GET
請求可以將框中的內容加到URl中也可以實現搜索,相比於POST
方法安全性更差。一般的瀏覽器對URl的限制是20kb
POST請求
POST
請求方法可以迴避GET
請求方法的弊端。- 請求正文與頭部信息相隔一行。
- 不受長度的影響。
- 會受到表單類型的影響。
HEAD請求
- 只有頭部信息,不含有響應信息
- 一般用到HEAD請求的情況
- 掃描
- 爬蟲
HTTP響應
狀態碼
1xx
表示服務器正在處理,一般見不到2xx
最常見的200,表示服務器可以正常響應3xx
重定向的狀態碼,4xx
客戶端出現問題5xx
服務器出現問題,500是內部錯誤
請求頭
Accept
用戶代理可處理的媒體類型Host
請求資源所在服務器,顯示域名+端口referer
要訪問的網站是從哪個網站跳轉來的User-Agent
HTTP客戶端程序的信息
User-Agent
簡稱UA
主要是可以看到訪問設備的信息
if-Match
比較實體標記if-Modified-Since
比較資源的更新時間if-None-Match
比較實體標記,與if-Match
相反
以上三個字段是用來判斷緩存和服務器上的網站信息是否有變更
響應頭
Location
即重定向的位置Server
HTTP服務器的安裝信息。響應包,提供服務器的信息