HTTP請求頭和響應頭詳解

HTTP 請求報文由3部分組成(請求行+請求頭+請求體)

image.png

HTTP請求報文

  • 1是請求方法,GET和POST是最常見的HTTP方法,初次以外還包括 DELETE、HEAD、OPTIONS、PUT、TRACE,不過現在大部分的瀏覽器只支持GET和POST

  • 2是請求對應的URL地址,他和報文頭的Host屬性,組合起來是一個完整的請求URL

  • 3是協議民稱和版本號

  • 4是報文頭,有若干個屬性,形式為key:val,服務端據此獲取客戶端信息

  • 5是報文體,它將一個頁面表單中的組件值通過param1=val1&parma=2的鍵值對形式編碼成一個格式化串,它承載多個請求參數的數據,不但報文頭可以傳遞請求參數,URL也可以通過/chapter15/user.html? param1=value1&param2=value2”的方式傳遞數值

HTTP請求報文頭屬性

什么是報文頭屬性呢,報文頭屬性有什么用呢?

比如說吧,當你在公司cv代碼的時候,突然之間餓意來襲,你就打電話,讓樓下的餐館送個外賣,你給老板說:老板,給我來個最便宜的蓋飯,送到xxx,我叫屌絲碼農

這里你要的蓋飯相當于報文體,而我叫屌絲碼農這種信息就相當于報文體,他是一些附屬屬性,為的是讓你們的交易更加順利.

所以HTTP的報文頭的屬性,就是為啦讓客戶端和瀏覽器端更加便捷、順利

常見的HTTP報文頭屬性

  • Accpet

    • 告訴服務端,客戶端接收什么類型的響應
  • Referer

    • 表示這是請求是從哪個URL進來的,比如想在網上購物,但是不知道選擇哪家電商平臺,你就去問度娘,說哪家電商的東西便宜啊,然后一堆東西彈出在你面前,第一給就是某寶,當你從這里進入某寶的時候,這個請求報文的Referer就是www.baidu.com
  • Cache-Control

    • 對緩存進行控制,如一個請求希望響應的內容在客戶端緩存一年,或不被緩可以通過這個報文頭設置
  • Accept-Encoding

    • 這個屬性是用來告訴服務器能接受什么編碼格式,包括字符編碼,壓縮形式(一般都是壓縮形式)

      • 例如:Accept-Encoding:gzip, deflate(這兩種都是壓縮格式)
  • Host

    • 指定要請求的資源所在的主機和端口
  • User-Agent 作用:告訴服務器,客戶端使用的操作系統、瀏覽器版本和名稱

HTTP響應報文

響應報文與請求報文一樣,由三個部分組成(響應行,響應頭,響應體)

image.png
  • 1報文協議及版本;

  • 2狀態碼及狀態描述;

  • 3響應報文頭,也是由多個屬性組成;

  • 4響應報文體,即我們要的數據。

HTTP狀態碼

image.png

簡單說下常見的幾個狀態碼

  • 200 OK 表示成功

  • 303 重定向,把你重定向到其他頁面

  • 304 資源并未修改,可以直接使用本地的緩存

  • 404 找不到頁面(頁面被刪除或其他)

  • 500 服務端錯誤

HTTP響應報文屬性

  • Cache-Control

    • 響應輸出到客戶端后,服務端通過該屬性告訴客戶端該怎么控制響應內容的緩存
  • ETag

    • 表示你請求資源的版本,如果該資源發生啦變化,那么這個屬性也會跟著變
  • Location

    • 在重定向中或者創建新資源時使用
  • Set-Cookie

    • 服務端可以設置客戶端的cookie

更多常用請求頭和響應頭屬性

https://www.cnblogs.com/widget90/p/7650890.html

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容