HTTP報(bào)文
HTTP報(bào)文由報(bào)文首部和報(bào)文主體構(gòu)成笔横,報(bào)文主體通常是可選的
請(qǐng)求報(bào)文及響應(yīng)報(bào)文的結(jié)構(gòu)
參考我之前的文章 HTTP簡(jiǎn)要
編碼提升傳輸速率
-
壓縮傳輸內(nèi)容的編碼
報(bào)文:由8位字節(jié)流組成,用于HTTP傳輸
實(shí)體:作為請(qǐng)求或響應(yīng)的有效荷載體瞭吃,其內(nèi)容由實(shí)體首部和實(shí)體主體組成栋豫,
通常情況下,報(bào)文主體等于實(shí)體主體,只要當(dāng)實(shí)體主體的內(nèi)容被編碼時(shí)才不一致讨阻。
就像發(fā)送帶附件的郵件時(shí)通常會(huì)采用zip壓縮一樣,HTTP傳輸數(shù)據(jù)時(shí)為了能夠快速高效篡殷,會(huì)在傳輸過程中采用編碼壓縮钝吮。
常用的編碼方法有- gzip
compress
deflate
分塊傳輸編碼
加載網(wǎng)頁的時(shí)候,對(duì)應(yīng)內(nèi)容比較大的數(shù)據(jù)會(huì)把服務(wù)器會(huì)把內(nèi)容切割成多個(gè)塊板辽,然后瀏覽器逐步加載這些內(nèi)容奇瘦。
這種把實(shí)體分塊傳輸?shù)墓δ芙凶龇謮K傳輸編碼(Chunked Transfer Coding)
發(fā)送多種數(shù)據(jù)的多部分對(duì)象集合
我們發(fā)送郵件通常會(huì)帶圖片和文字,類似于發(fā)送圖文郵件戳气,HTTP中也有這樣的數(shù)據(jù)集合:多部分對(duì)象集合链患。
獲取部分內(nèi)容的范圍請(qǐng)求
下載大文件的時(shí)候,如果下載中斷瓶您,想要繼續(xù)下肯定不想從頭開始下載麻捻,那么能記住之前加載到了哪里,下回直接從這個(gè)中斷的地方繼續(xù)下載不就OK了嗎呀袱?這就是獲取部分內(nèi)容的范圍請(qǐng)求
使用
Ranege:5001-10000
代表了請(qǐng)求5001-10000的數(shù)據(jù)
內(nèi)容協(xié)商返回最何時(shí)的內(nèi)容
最簡(jiǎn)單的例子就是贸毕,根據(jù)瀏覽器的默認(rèn)語言選擇網(wǎng)站的語言版本。具體來說由下列字段確定
- Accept
- Accept-Charset
- Acept-Encoding
- Accept-Language
- Content-Language