1. 程式人生 > >HTTP的報文結構

HTTP的報文結構

請求報文結構如下表,如下:

報文首部 空行(CR+LF) 報文主體
請求行(包含方法、URI、HTTP版本)
請求首部欄位(補充請求的附加內、客戶端資訊、響應內容相關優先順序等)
通用首部欄位(請求、響應報文都會使用的首部)
實體首部欄位(補充資源內容,更新時間和實體相關的資訊)
其他

響應報文結構如下表,如下:

報文首部 空行(CR+LF) 報文主體
狀態行(包含HTTP版本、狀態碼)
響應首部欄位(補充響應的附加內容,也會要求客戶端新增額外的內容資訊)
通用首部欄位(請求、響應報文都會使用的首部)
實體首部欄位(補充資源內容,更新時間和實體相關的資訊)
其他

通用首部欄位列表

通用首部欄位名 說明
Cache-Control 控制快取的行為
Connection 控制不在轉發給代理的首部欄位、管理持久連結
Date 建立報文的日期和時間
Pragma 僅作為HTTP/1.0的向後相容被定義
Trailer 報文主體後加的首部欄位 ,可用在分塊編碼時
Transfer-Encoding 指定報文主體的傳輸編碼格式
Upgrade 檢測協議是否可使用更高版本,(在使用該欄位時要額外新增 Connection:Upgrade欄位)
Via 追蹤客戶端和伺服器之前請求和響應的傳輸路徑,(所有代理伺服器的資訊)
Warning 各種錯誤警告

請求首部欄位列表

請求首部欄位名 說明
Accept 通知伺服器使用者代理可處理的媒體型別以及優先順序
Accept-Charset 通知伺服器使用者代理支援的字符集以及字符集的優先順序
Accept-Encoding 告知伺服器使用者代理支援的內容編碼以及內容編碼的優先順序
Accept-Language 告知伺服器使用者代理能夠處理的自然語言以及自然語言的優先順序
Authorization 用來告知伺服器使用者代理的認證資訊
Expet 期待伺服器出現某種待定行為
From 告知伺服器使用者代理的電子郵箱地址
Host 請求資源所處計算機的主機名和埠號
If-Match 告知伺服器匹配資源所用的實體標記值
If-Modified-Since 告知伺服器欄位值時間之後有更新資源,則獲取
If-None-Match 和If-Match相反
If-Range 資源未更新時傳送實體Bety的範圍請求
If-Unmodified-Since 告知伺服器欄位之間之後未更新資源,則獲取
Max-Forwards 以十進位制的形式指定可經過的伺服器的最大數目
Proxy-Authorization 代理伺服器要求客戶端的認證資訊
Pange 只需要獲取部分資源的請求告知伺服器的資源指定範圍
Referer 告知伺服器請求的原始資源的URI
TE 告知伺服器客戶端能處理的編碼格式以及相對優先順序
User-Agent Http客戶端的資訊,如果請求經過代理也可能會新增代理伺服器的資訊

注:形如If-xxx這樣的請求欄位稱為條件請求,伺服器一般接收到附帶條件請求的URL,只有判斷條件成立後才會執行請求

響應欄位首部

響應首部欄位名 說明
Accept-Range 用來告知客戶端伺服器是否能處理範圍請求,可以指定為betys,反之指定為none
Age 返回資源建立到這次請求所經過的時間,單位為s
ETage 伺服器將資源以字串的形式作唯一標識ETage
Location 告知伺服器使用者代理能夠處理的自然語言以及自然語言的優先順序
Authorization 用來告知伺服器使用者代理的認證資訊(屬客戶端與代理之間的通訊)
Retry-After 告知客戶端多久之後再次訪問
Server 告知客戶端當前伺服器安裝的HTTP伺服器應用程式的資訊
Vary 代理伺服器需要快取的管理資訊
WWW-Authenticate 伺服器對對客戶端的認證資訊

實體首部欄位

實體首部欄位名 說明
Allow 通知客戶端能支援的HTTP的所有方法
Content-Encoding 通知客戶端伺服器對實體的主體的編碼方式
Content-Language 通知客戶端實體主體的自然語言
Content-Length 實體主體的大小
Content-Location 表示報文返回資源的原始URI
Content-MD5 客戶端對接收到的報文主體執行相同的MD5演算法,然後與欄位中的值進行比較。(目的檢測傳輸過程實體主體是否保持完整)
Content-Range 實體主體返回的是資源的那部分位置範圍
Content-Type 實體主體的媒體型別
Expires 告知客戶端資源的有效截止日期
Last-Modified 告知客戶端資源的最後修改日期

相關推薦

乙太網幀、IP 幀、UDP/TCP幀、http 報文結構解析

我們從 OSI/RM 參考模型入手,來看 OSI/RM 七層模型中的每一層資料幀結構。 一 OSI/RM 結構 OSI 是不同製造商的裝置和應用軟體在網路中進行通訊的標準,此模型已經成為計算機間和網路間進行通訊的主要結構模型, 目前使用的大多數網路通訊協議的結構都是基於 OSI 模型的。

HttpHTTP報文結構及請求資料大小

HTTP報文結構如下: HTTP報文結構包含請求行、請求頭、請求體三部分。一次請求示例如下圖: 一、請求行【request-line】 POST 請求方法 /sso/login 請求UR

#WEB安全基礎 : HTTP協議 | 0x10 擴展HTTP報文結構概念和內容編碼

忽略 客戶 strong 發生 技術分享 bit 重要 內容 產生 #以後的知識都是HTTP協議的擴展,如果精力有限可以選擇暫時忽略,註意只是暫時忽略,以後的東西同樣重要 HTTP傳輸數據時可以直接傳輸也可以對數據進行編碼,由於編碼在計算機內運行,所以會占用一些CPU資源

網路應用(6):http報文結構與curl的使用

http是一個協議,協議就是約定、規定,先不管為什麼這麼約定有什麼高深的東西,為了解決具體問題,我們先要能使用協議,理解協議中對我們有用的那部分資料,是的,我們不是研究生,更不是純研究,所有的研究都要由具體的問題來驅動。 那這裡的具體問題是什麼?就是看懂http的請求跟回覆啊,就像寫某某申請一樣,你不理申請最

HTTP響應報文結構

必須 ont rst enc image etc cache odi 指定 HTTP響應報文由三部分組成:響應行、響應頭、響應體。 一、響應行:協議版本+狀態碼+描述   常見狀態碼:   100-199:表示成功接收請求,要求客戶端繼續提交下一次請求才能完成整個處理過

HTTP請求/響應報文結構

空格 dont acc 保存 mime 描述 網頁 斷開 解析 HTTP協議版本有兩種:HTTP1.0和HTTP1.1 它們倆的區別在於:HTTP1.0對於每個連接都只能傳送一個請求和響應,請求後就會關閉,HTTP1.0沒有Host字段;而HTTP1.1在同一個連接中可以傳

Http協議報文結構

Http協議報文結構 Http請求 HTTP請求由狀態行、請求頭、請求正文三部分組成。 狀態行包括: Request URL: https://www.baidu.com/his?wd=&from=pc_web&rf=3&hisdat

HTTP報文結構

請求報文結構如下表,如下: 報文首部 空行(CR+LF) 報文主體 請求行(包含方法、URI、HTTP版本) 請求首部欄位(補充請求的附加內、客戶端資訊、響應內容相關優先順序等) 通用首部欄位

3.1 HTTP報文結構及各部分的介紹

HTTP通訊過程包括從客戶端發往伺服器端的請求及從伺服器端返回客戶端的響應。本節我們來了解一下請求和響應是怎樣運作的。 1.我們先來解釋一下HTTP報文的構成。 什麼是HTTP報文?        用於HTTP協議互動的資訊被稱為HTTP報文,HTTP報文字身是由多行資料構

HTTP報文

提示 報文 發生 reason sta 修改 expires options 響應報文 HTTP 報文是 HTTP 應用程序之間傳遞的格式化數據塊,分為請求報文和響應報文兩類,兩者的基本結構相同。 HTTP 報文由起始行、首部、主體(可選)三個部分組成。其中,起始行和首部均

HTTP權威指南】第三章-HTTP報文

響應 主體 方法 首部 部分 功能 第三章 http 支持 HTTP是因特網的信使,報文就是信使運送的包裹。 這一章包含: 報文如何流動 報文的三個組成部分(起始行,首部,實體的主體部分) 請求報文和響應報文的區別 請求報文支持的各種功能(方法) 響應報文返回的狀態碼

HTTP 03 HTTP 報文

pos service 圖片 請求 moved dir 返回 多行 red 客戶端的HTTP報文, 叫做請求報文 服務器端的叫做 響應報文. HTTP 報文本身是由多行 (用 CR+LF 作換行符) 數據構成的字符串文本. HTTP 報文大致分為報文首部 和 報文主體

讀《圖解HTTP》有感-(HTTP報文內的HTTP消息)

圖解 技術分享 nbsp alt .cn 實例 長沙 字段 將在 寫在前面 HTTP通信包括從客戶端到服務端的的請求以及服務端返回客戶端的響應 正文 1、什麽是HTTP報文?它由什麽構成?包含幾個部分? 用於HTTP協議交互的信息就是HTTP報文;它是由多行數據構

TCP報文結構

分享圖片 bit span enc 連接 seq 檢驗 header fff 固定首部長度為20字節,可變部分0~40字節,各字段解釋:source port number:源端口,16bits,範圍0~65525。target port number:目的端口,16bi

HTTP協議結構

http服務 cookies delete 過程 管線 傳輸 引入 clas blog 通信:HTTP協議用於客戶端和服務器端之間的通信。請求訪問資源的為客戶端,提供資源響應的是服務器端。應用HTTP協議時,必定是一端為客戶端,一端為服務端角色。規定:請求從客戶端發出,由

HTTP報文-響應頭部

響應頭部由鍵值對組成,每行一對,關鍵字和值用英文冒號“:”分隔,用於通知客戶端有關於伺服器的資訊 響應頭部欄位分為四類: 響應欄位:伺服器傳遞自身資訊的響應 通用欄位:用於請求或響應,是作為一個整體而不是特定資源與事務相關聯 實體欄位:用於請求或響應,定義被傳送資源的資訊 其他

HTTP報文-請求頭部

請求頭部由鍵值對組成,每行一對,關鍵字和值用英文冒號“:”分隔,用於通知伺服器有關於客戶端請求的資訊 請求頭部欄位分為四類: 請求欄位:儲存請求要求 通用欄位:用於請求或響應,是作為一個整體而不是特定資源與事務相關聯 實體欄位:用於請求或響應,定義被傳送資源的資訊 其他:包含H

HTTP報文-狀態行

狀態行 狀態行(status line)通過提供一個狀態碼來說明所請求的資源情況 狀態行格式: HTTP-Version Status-Code Reason-Phrase CRLF HTTP-Version:表示伺服器HTTP協議的版本 Status-Code:表示伺服器發

Web高階 HTTP報文

1. 報文結構 1.1 請求報文結構 Start-Line 單行,包括 Method + URL + HTTP Version Headers 多行,形式為 Name:Value Body 可選,主體部分 Get https://www.baidu.com/ HTTP/1.1 ----

HTTP報文首部

  http報文結構 報文首部 (空行) 報文主體 請求報文中的報文首部 請求行(方法、URI、HTTP版本)