下载此文档

HTTP 协议中你必须知道的三种数据格式.doc


文档分类:IT计算机 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
HTTP协议中你必须知道的三种数据格式实****中的一个主要工作就是分析HTTP中的协议,自己也用Python写过正则表达式对HTTP请求和响应的内容进行匹配,然后把关键字段抽离出来放到一个字典中以备使用(可以稍微改造一下就是一个爬虫工具)。HTTP协议中的很多坑,自己都遇到过,我就针对自己遇到的几种HTTP常见的数据格式,来做一个总结。Zlib压缩数据对于Zlib,一点也不陌生,我们平时用它来压缩文件,常见类型有zip、rar和7z等。Zlib是一种流行的文件压缩算法,应用十分广泛,尤其是在Linux平台。当应用Zlib压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小,这取决于文件中的内容。Zlib也适用于Web数据传输,比如利用Apache中的Gzip(后面会提到,一种压缩算法)模块,我们可以使用Gzip压缩算法来对Apache服务器发布的网页内容进行压缩后再传输到客户端浏览器。这样经过压缩后实际上降低了网络传输的字节数,最明显的好处就是可以加快网页加载的速度。网页加载速度加快的好处不言而喻,节省流量,改善用户的浏览体验。而这些好处并不仅仅限于静态内容,PHP动态页面和其他动态生成的内容均可以通过使用Apache压缩模块压缩,加上其他的性能调整机制和相应的服务器端缓存规则,这可以大大提高网站的性能。因此,对于部署在Linux服务器上的PHP程序,在服务器支持的情况下,建议你开启使用GzipWeb压缩。Gzip压缩两种类型压缩算法不同,可以产生不同的压缩数据(目的都是为了减小文件大小)。目前Web端流行的压缩格式有两种,分别是Gzip和Defalte。Apache中的就是Gzip模块,Deflate是同时使用了LZ77算法与哈夫曼编码(HuffmanCoding)的一个无损数据压缩算法。Deflate压缩与解压的源代码可以在自由、通用的压缩库zlib上找到。更高压缩率的Deflate是7-zip所实现的。P也使用这种实现,它可以对gzip、PNG、MNG以及ZIP文件进行压缩从而得到比zlib更小的文件大小。在KenSilverman的KZIP与PNGOUT中使用了一种更加高效同时要求更多用户输入的Deflate程序。deflate使用inflateInit(),而gzip使用inflateInit2()进行初始化,比inflateInit()多一个参数:-MAX_WBITS,表示处理rawdeflate数据。因为gzip数据中的zlib压缩数据块没有zlibheader的两个字节。使用inflateInit2时要求zlib库忽略zlibheader。在zlib手册中要求windowBits为8..15,但是实际上其它范围的数据有特殊作用,如负数表示rawdeflate。其实说这么多,总结一句话,Deflate是一种压缩算法,是huffman编码的一种加强。deflate与gzip解压的代码几乎相同,可以合成一块代码。更多知识请见维基百科zlib。Web服务器处理数据压缩的过程Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩(Accept-Encoding信息);如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经

HTTP 协议中你必须知道的三种数据格式 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息