HTTP协议压缩.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HTTP协议压缩

本文会使用Fiddler来查看HTTP request和Response, 如果不熟悉这个工具,可以先参考[Fiddler教程]HTTP压缩是指: Web服务器和浏览器之间压缩传输的”文本内容“的方法。 HTTP采用通用的压缩算法,比如gzip来压缩HTML,Javascript, CSS文件。能大大减少网络传输的数据量,提高了用户显示网页的速度。当然,同时会增加一点点服务器的开销。本文从HTTP协议的角度,来理解HTTP压缩这个概念。?阅读目录HTTP内容编码和HTTP压缩的区别HTTP压缩的过程实例:用Fiddler观察HTTP压缩内容编码类型压缩的好处gzip的缺点gzip是如何压缩的HTTP Response能压缩,HTTP Request也是可以压缩的?HTTP内容编码和HTTP压缩的区别HTTP压缩,在HTTP协议中,其实是内容编码的一种。在http协议中,可以对内容(也就是body部分)进行编码,可以采用gzip这样的编码。从而达到压缩的目的。也可以使用其他的编码把内容搅乱或加密,以此来防止未授权的第三方看到文档的内容。所以我们说HTTP压缩,其实就是HTTP内容编码的一种。所以大家不要把HTTP压缩和HTTP内容编码两个概念混淆了。?HTTP压缩的过程1. 浏览器发送Http request 给Web服务器,? request 中有Accept-Encoding: gzip, deflate。 (告诉服务器,浏览器支持gzip压缩)2. Web服务器接到request后,生成原始的Response, 其中有原始的Content-Type和Content-Length。3. Web服务器通过Gzip,来对Response进行编码,编码后header中有Content-Type和Content-Length(压缩后的大小),并且增加了Content-Encoding:gzip.? 然后把Response发送给浏览器。4. 浏览器接到Response后,根据Content-Encoding:gzip来对Response 进行解码。获取到原始response后,然后显示出网页。如下图:??实例:Fiddler观察HTTP压缩眼见为实,我们看一个实际的例子,我发现博客园就使用了gzip压缩。使用Fiddler可以清楚地看到。???在Fiddler中,每次都要手动去decode. 太麻烦。? 点击工具栏上的Decode按钮,就可以自动decode了。?内容编码类型?HTTP定义了一些标准的内容编码类型,并允许用扩展的形式添加更多的编码。Content-Encoding header 就用这些标准化的代号来说明编码时使用的算法Content-Encoding值gzip  表明实体采用GNU zip编码compress 表明实体采用Unix的文件压缩程序deflate  表明实体是用zlib的格式压缩的identity  表明没有对实体进行编码。当没有Content-Encoding header时,就默认为这种情况gzip, compress, 以及deflate编码都是无损压缩算法,用于减少传输报文的大小,不会导致信息损失。其中gzip通常效率最高,使用最为广泛。?压缩的好处?http压缩对纯文本可以压缩至原内容的40%, 从而节省了60%的数据传输。?实例:博客园首页压缩前是:46124 bytes. 压缩后是:16368bytes.???? 只有原先的35%。? 节省了65%的数据传输,从而大大提高了性能?有图为证。?Gzip的缺点JPEG这类文件用gzip压缩的不够好。?Gzip是如何压缩的简单来说, Gzip压缩是在一个文本文件中找出类似的字符串,并临时替换他们,使整个文件变小。这种形式的压缩对Web来说非常适合,因为HTML和CSS文件通常包含大量的重复的字符串,例如空格,标签。?HTTP Response能压缩,HTTP Request也是可以压缩的浏览器是不会对Request压缩的。但是一些HTTP程序在发送Request时,会对其进行编码。如下图。

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档