由于最近很忙,,我們直接進入正題,,給大家解釋下壓縮的原理:
當你進入中高級或者面試的時候肯定會遇到http壓縮的問題,我們拿面試來說吧,。 面試官問你知道http壓縮嘛,,你就這么回答,如下: 瀏覽器通過http request 傳到 Web服務(wù)器,,request中包含了 Accept-Encoding:gzip,deflate(這是告訴服務(wù)器,,瀏覽器支持gzip和deflate壓縮.gzip和deflate相同,但也有差異,,詳情自行百度:http accept-encoding同時存在gzip和deflate)
Web服務(wù)器接收到request后,,生成原始的response,在response中有原始的content-type和content-lenght Web服務(wù)器對response進行g(shù)zip編碼,編碼后的response包含content-type和content-lenght還有新增加的Accept-Encoding:gzip,然后把response發(fā)送給瀏覽器 瀏覽器對Web服務(wù)器返回的response,根據(jù)Accept-Encoding:gzip進行g(shù)zip解碼,,取到原始的response數(shù)據(jù),,顯示出網(wǎng)頁
Content-Encoding的值: gzip 表明實體采用GNU zip編碼 compress 表明實體采用Unix的文件壓縮程序 deflate 表明實體采用zlib格式壓縮的 identity 表明沒有對實體進行編碼,當沒有Content-Encoding header時,,就默認為這種情況 gzip和compress以及deflate編碼都是無損壓縮算法,,用于減少傳輸報文的大小,不會導(dǎo)致信息損失,,其中g(shù)zip的效率最高,,使用最為廣泛。 歡迎大神給予指點,,也愿意與大家交流共同進步....
|