http報文:它是http應用程式之間傳送的資料塊。這些資料塊以一些文字形式的元資訊開頭,這些資訊描述了報文的內容及含義,後面跟著可選的資料部分。這些報文都是在客戶端、伺服器和**之間流動。
http報文的流動方向:一次http請求,http報文會從「客戶端」流到「**」再流到「伺服器」,在伺服器工作完成之後,報文又會從「伺服器」流到「**」再流到「客戶端」
報文的語法:所有的http報文都可以分為兩類,請求報文和響應報文。請求和響應報文的基本報文結構大致是相同的,只有起始行的語法有所不同。
請求報文:它會向web伺服器請求乙個動作
請求報文的格式:
起始行:
頭部:
主體:
響應報文:它會將請求的結果返回給客戶端。
響應報文的格式:
起始行:
頭部:
主體:
下面是對各部分的簡要描述:
1、方式(method):客戶端希望伺服器對資源執行的動作,是乙個單獨的詞,比如,get、post或head
2、請求url(request-url):要直接與伺服器進行對話,只要請求url是資源的絕對路徑就可以了,伺服器可以假定自己是url的主機/埠
3、版本(version):報文所使用的http版本。其格式:http/《主要版本號》.《次要版本號》
4、狀態碼(status-code):狀態碼是三位數字,描述了請求過程中所發生的情況。每個狀態碼的第一位數字都用於描述狀態的一般類別(比如,「成功」、「出錯」等等)
5、原因短語(reason-phrase):數字狀態碼的可讀版本,包含行終止序列之前的所有文字。原因短語只對人類有意義,因此,儘管響應行http/1.0 200 not ok和http/1.0 200 ok中原因短語的含義不同,但同樣都會被當作成功指示處理
6、頭部(header):可以有零個或多個頭部,每個首部都包含乙個名字,後面跟著乙個冒號(?,然後是乙個可選的空格,接著是乙個值,最後是乙個crlf首部是由乙個空行(crlf)結束的,表示了頭部列表的結束和實體主體部分的開始
7、實體的主體部分(entity-body):實體的主體部分包含乙個由任意資料組成的資料塊,並不是所有的報文都包含實體的主體部分,有時,報文只是以乙個crlf結束。
HTTP請求報文詳解
http報文是面向文字的,報文中的每乙個欄位都是一些ascii碼串,各個欄位的長度是不確定的。http有兩類報文 請求報文和響應報文。請求報文 乙個http請求報文由請求行 request line 請求頭部 header 空行和請求資料4個部分組成,下圖給出了請求報文的一般格式。1 請求行 請求行...
HTTP協議報文詳解
學習web開發需要對http協議熟悉,下面直接進入主題。一 什麼是報文 報文,是網路中交換和傳輸的資料單元,即站點一次性要傳送的資料塊。報文包含了將要傳送的完整的資料資訊,其長短很不一致,長度不限且可變。http報文是由一行一行簡單的字串組成的。http報文都是純文字,不是二進位制 所以人們可以很方...
HTTP協議之報文詳解
學習web開發需要對http協議熟悉,下面直接進入主題。一 什麼是報文 報文,是網路中交換和傳輸的資料單元,即站點一次性要傳送的資料塊。報文包含了將要傳送的完整的資料資訊,其長短很不一致,長度不限且可變。http報文是由一行一行簡單的字串組成的。http報文都是純文字,不是二進位制 所以人們可以很方...