HTTP從入門到入土(5)——HTTP報文格式

格子熊發表於2018-08-23

HTTP報文格式

HTTP報文分為請求報文和響應報文,只有傳送了請求報文,才會有響應報文。

常見的報文格式如下所示:

avatar

請求報文

一個請求報文由四部分組成,分別是:

  • 請求行
  • 請求頭
  • 空行
  • 請求正文

請求行

請求行由三部分組成,分別是:請求方法,URL以及協議版本。

GET /test/hi-there.txt HTTP/1.0

如上所示:該請求行的請求表示了本次請求的請求方法是GET,URL是/test/hi-there.txt,協議版本是1.0。

請求頭

請求頭又多個鍵值對組成,一般用來描述客戶端的情況以及對伺服器的要求,可以說,請求頭是HTTP協議中最重要的部分了,許多HTTP方面的優化都可以從請求頭方面入手。

之後將會有文章專門介紹請求頭。

空行

空行位於請求頭之後,由回車符和換行符組成,用來隔斷請求頭和請求正文。

請求正文

請求正文中一般儲存請求方法(比如POST)攜帶的引數

響應報文

響應報文同樣由四部分組成,分別是:

  • 響應行
  • 響應頭
  • 空行
  • 響應正文

響應行

響應行由三部分組成,分別是:協議版本,狀態碼以及狀態描述。

HTTP/1.0 200 OK

如上所示,協議版本是1.0版本,狀態碼為200,狀態描述為OK,從這一條可以看出,伺服器成功返回了資訊。

響應頭

響應頭和請求頭類似,用來描述伺服器資訊以及對請求頭的回應。

空行

空行位於響應頭之後,由回車符和換行符組成,用來隔斷響應頭和響應正文。

響應正文

響應正文就是伺服器針對HTTP請求返回的資料,按照HTTP請求的資料不同可以返回不同種類的資料。

相關文章