摘要:在使用分塊編碼時,可以沒有,此時,數(shù)據(jù)是分為一系列的塊來發(fā)送的,每塊都有大小說明。實體摘要為檢測實體主體的數(shù)據(jù)是否被修改過,發(fā)送方可以在生成初始的主體時,生成一個數(shù)據(jù)的校驗和。分塊編碼把報文分割為若干個大小已知的塊。
WilsonLiu"s blog 首發(fā)地址
實體和編碼每天都有數(shù)以億計的各種媒體對象經(jīng)由HTTP傳送,如圖像,文本,影片以及軟件程序等。HTTP會確保它的報文被正確的傳送,識別,提前以及適當(dāng)?shù)奶幚恚瑒t需要滿足以下條件。
可以被正確的識別(通過Content-Type首部說明媒體格式,Content-Language首部說明語言),以便瀏覽器和其他客戶端能夠正確的處理內(nèi)容
可以被正確的解包(通過Content-Length首部和Content-Encoding首部)
是最新的(通過實體驗證碼和緩存過期控制)
符合用戶的需要(基于Accept系列的內(nèi)容協(xié)商首部)
在網(wǎng)絡(luò)上可以快速有效地傳輸(通過范圍請求,差異編碼以及其他數(shù)據(jù)壓縮方法)
完整到達(dá),未被篡改過(通過傳輸編碼首部和Content-MD5校驗和首部)
為了實現(xiàn)上述目標(biāo),HTTP/1.1版本定義了以下10個基本實體首部字段。
Content-Type
Content-Length
Content-Language
Content-Encoding
Content-Location
Content-Range
Content-MD5
Last-Modified
Expires
Allow
Etag
Cache-Control
Content-Length:實體的大小Content-Length首部指示出報文中編碼后實體主體的字節(jié)大小。使用Content-Length首部是為了能夠檢測出服務(wù)器崩潰而導(dǎo)致的報文截尾,并對共享持久連接的多個報文進(jìn)行正確的分段。
Content-Length首部對于持久連接是必不可少的,如果響應(yīng)通過持久連接傳輸,就可能有另一條HTTP響應(yīng)緊隨其后。客戶端通過Content-Length首部就可以知道報文在何處結(jié)束,下一條報文從何處開始。因為連接是持久的,客戶端無法依賴連接關(guān)閉來判別報文的結(jié)束。
在使用分塊編碼(chunked encoding)時,可以沒有Content-Length,此時,數(shù)據(jù)是分為一系列的塊來發(fā)送的,每塊都有大小說明。
HTTP/1.1規(guī)范中建議對于帶有主體但沒有Content-Length首部的請求,服務(wù)器如果無法確定報文的長度,就應(yīng)當(dāng)發(fā)送400 Bad Request響應(yīng)或411 Length Required響應(yīng),后一種表明服務(wù)器要求收到正確的Content-Length首部。
實體摘要為檢測實體主體的數(shù)據(jù)是否被修改過,發(fā)送方可以在生成初始的主體時,生成一個數(shù)據(jù)的校驗和。Content-MD5首部是在對內(nèi)容作了所有需要的內(nèi)容編碼之后,還沒做任何傳輸編碼之前,計算出來的。
媒體類型和字符集Content-Type首部字段說明了實體主體的MIME類型,同時還支持可選的參數(shù)來進(jìn)一步說明內(nèi)容的類型。
Content-Type: text/html; charset=iso-8859-4
多部分媒體類型
MIME中的multipart電子郵件報文中包含多個報文,它們合在一起作為單一的復(fù)雜報文發(fā)送。每一部分都是獨(dú)立的,有各自的描述其內(nèi)容的集,不同的部分之間用分界字符串連接在一起。
HTTP也支持多部分主體。不過,通常只用在下列兩種情形之一:提交填寫好的表格,或是作為承載若干文檔片段的范圍響應(yīng)。
HTTP使用Content-Type:multipart/form-data或Content-Type:multipart/mixed這樣的首部以及多部分主體來發(fā)送這種請求。
HTTP應(yīng)用程序有時在發(fā)送之前需要對內(nèi)容進(jìn)行編碼,當(dāng)內(nèi)容經(jīng)過編碼之后,編好碼的數(shù)據(jù)就防止實體主體中,像往常一樣發(fā)送給接收方。此時Content-Length變?yōu)榫幋a后的長度。
同時,我們不希望服務(wù)器用客戶端無法解碼的方式來對內(nèi)容進(jìn)行編碼,因此,客戶端需要把自己能夠支持的內(nèi)容編碼列表防止請求的Accept-Encoding首部。
使用傳輸編碼是為了改變報文中的數(shù)據(jù)在網(wǎng)絡(luò)上傳輸?shù)姆绞健?/p>
分塊編碼
分塊編碼是HTTP規(guī)范唯一定義的傳輸編碼方式。
分塊編碼把報文分割為若干個大小已知的塊。塊之間是緊挨著發(fā)送的,這樣就不需要在發(fā)送之前就知道整個報文的大小了。
范圍請求是指客戶端實際上只請求文檔的一部分,或者說某個范圍。比如,下載電影下到一半網(wǎng)絡(luò)故障,連接中斷了,此時可利用范圍請求來繼續(xù)下載。
Range: bytes=4000-
代表客戶端請求的是文檔開頭4000字節(jié)以后的步伐內(nèi)容。
Range首部在流行的點對點(Peer-to-Peer)文件共享客戶端軟件中得到廣泛的應(yīng)用,他們從不同的對等實體同時下載多媒體文件的不同部分。
差異編碼差異編碼是HTTP協(xié)議的一個擴(kuò)展,它通過交換對象改變的部分而不是完整的對象來優(yōu)化傳輸性能。
請求報文
A-IM: diffe //Accept-Instance-Manipulation If-None-Match: ababdisdksada //驗證是否新鮮
響應(yīng)報文
IM:diffe //差異編碼的算法 Etag: zdsdsfsafsd //更新后的版本號 Delta-base: ababdisdksada //差異算法基于的Etag
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/30384.html
摘要:在使用分塊編碼時,可以沒有,此時,數(shù)據(jù)是分為一系列的塊來發(fā)送的,每塊都有大小說明。實體摘要為檢測實體主體的數(shù)據(jù)是否被修改過,發(fā)送方可以在生成初始的主體時,生成一個數(shù)據(jù)的校驗和。分塊編碼把報文分割為若干個大小已知的塊。 WilsonLius blog 首發(fā)地址 實體和編碼 每天都有數(shù)以億計的各種媒體對象經(jīng)由HTTP傳送,如圖像,文本,影片以及軟件程序等。HTTP會確保它的報文被正確的傳送...
摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。 WilsonLius blog 首發(fā)地址 識別,認(rèn)證與安全 第三部分的4章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。 客戶端識別與cookie機(jī)制 第十一章 H...
摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。 WilsonLius blog 首發(fā)地址 識別,認(rèn)證與安全 第三部分的4章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。 客戶端識別與cookie機(jī)制 第十一章 H...
摘要:首發(fā)地址識別認(rèn)證與安全第三部分的章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。安全使用基本認(rèn)證的唯一方式就是將其與配合使用。加密之前的原始報文通常被稱為明文或。 WilsonLius blog 首發(fā)地址 識別,認(rèn)證與安全 第三部分的4章提供了一系列的技術(shù)和機(jī)器,可用來跟蹤身份,進(jìn)行安全性檢測,控制對內(nèi)容的訪問。 客戶端識別與cookie機(jī)制 第十一章 H...
閱讀 2317·2021-11-15 11:38
閱讀 2447·2021-11-15 11:37
閱讀 2552·2021-08-24 10:00
閱讀 2912·2019-08-30 15:56
閱讀 1267·2019-08-30 15:53
閱讀 3707·2019-08-29 18:43
閱讀 2935·2019-08-29 17:01
閱讀 3259·2019-08-29 16:25