HTTP請求報文主要由請求行、請求頭(首部)、空行、請求正文(Get請求沒有請求正文)4部分組成。
1、請求行
由三部分組成,分別為:①請求方法、②URL以及③協議版本;之間由空格分隔;
請求方法包括GET、HEAD、PUT、POET、TRACE、OPTIONS、DELETE以及擴展方法,當然並不是所有的服務器都實現了所有的方法,部分方法即便支持,出於安全性的考慮也是不同的;
協議版本的格式為:HTTP/主版本號.次版本號,常用的有HTTP/1.0和HTTP/1.1;
2、請求頭
請求頭部為請求報文添加了一些附加信息,由“名/值”對組成,每行一對,名和值之間使用冒號分隔。
常見請求頭如下:
3、空行
請求頭的最后會有一個空行,表示請求頭部結束,接下來為請求正文,這一行非常重要,必不可少。
4、請求正文
可選部分,比如GET請求就沒有請求正文。
可以理解為客戶端向服務端傳輸的數據。
HTTP響應報文主要由狀態行、響應頭、空行、響應正文4部分組成。
1、狀態行
由3部分組成,分別為:協議版本、狀態碼、狀態碼描述,之間由空格分隔;
2、響應頭
與請求頭類似,為響應報文添加一些附加信息。
常見響應頭如下:
3、空行
響應頭的最后會有一個空行,表示響應頭部結束,接下來為請求正文,這一行非常重要,必不可少。
4、響應正文
可以理解為服務器對客戶端的響應。