理解報文主體和實體主體的差別web
報文。是HTTP通訊中的基本單位,由8位組字節流組成,經過HTTP通訊傳輸。編碼
實體。做爲請求或響應的有效載荷數據(補充項)被傳輸,其內容由實體首部和實體主體組成。3d
HTTP報文中的主體用於傳輸請求或者響應的實體主體。code
一般,報文主體等於實體主體。只有當傳輸中進行編碼的時候,實體主體的內容纔會發生變化,纔會致使它與報文主體產生差別。orm
什麼是內容編碼,有什麼用途?cdn
內容編碼指明是應用在實體內容上的編碼格式,並保持實體信息原樣壓縮。內容編碼後的實體由客戶端接收並負責解碼。對象
什麼是分塊傳輸編碼blog
在傳輸大量數據的時候,咱們經過將數據分割成不少塊,也就是將實體主體分塊的功能,稱爲分塊傳輸編碼。圖片
分塊傳輸編碼會將實體主體分紅多個部分(塊)。使用分塊傳輸編碼的實體主體會由接收到客戶端負責解碼,恢復到編碼前的實體主體。ip
HTTP協議中採納了多部分對象集合,發送的一份報文主體內可含有多類型實體。一般是在圖片或文件等上傳的時候使用。
多部分對象集合包含的對象以下:
multipart/form-data
在web表單文件上傳的時候使用。multipart/byteranges
狀態碼206響應報文中包含多個範圍的內容的時候使用。在HTTP報文中使用多部分對象集合的時候,咱們須要在首部字段中加上Content-type字段
咱們在發送的請求中能夠指定響應的數據範圍,這種咱們稱爲範圍請求。
執行範圍請求的時候,會用到首部字段Range來指定資源的byte範圍。