我的理解
========
Content-Encoding 是用于在数据源和数据最终接收者之间传递编码方式的。中间代理
(如果有的话)不会去试图解码,而只是原样传输。甚至最终接收者在保存内容的时候,
也是原样保存的。典型的情况是 http 下载 gzip 格式的压缩包。
Transfer-Encoding 是用于两个传输节点之间传递“传输”编码方式的。两个节点要进行
相对应的编码和解码。但不会改变原数据的编码。
例如,A 传输数据到 C,中间经过了代理 B 。 即,A -> B -> C 。其中,A 和 B 支持
gzip 编码,但 C 不支持 gzip 编码。则 A -> B 的过程,可以使用
Transfer-Encoding: gzip 进行传输,但 B 要做解码操作,然后把解码后的原数据直接
传给 C 。具体步骤如下:
> 1. A 生成需要传输的数据 d ;
> 2. A 对 d 进行 gzip 编码得到 d1 ;
> 3. A 把 d1 传输给 B (使用 Transfer-Encoding: gzip);
> 4. B 接收 d1 ;
> 5. B 解码 d1 得到原来的数据 d;
> 6. B 把 d 传输个 C (不使用 Transfer-Encoding);
> 7. C 接收 d 。
也就是说,Content-Encoding 描述了要传输的数据的某种属性;而 Transfer-Encoding
描述的是数据的传输方式,即数据进行某种编码后再传输,或者把数据分块后再传输。
下面是一些关于 Accept-Encoding、Content-Encoding、 TE、Transfer-Encoding 的资料。直接复制的
这里的内容。
Some Links to RFC 2616
======================
* 3.5 Content Codings
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.5
* 3.6 Transfer Codings
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.6
* 4.3 Message Body
http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.3
* 14.3 Accept-Encoding
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.3
* 14.11 Content-Encoding
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11
* 14.39 TE
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.39
* 14.41 Transfer-Encoding
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.41
Note
====
* The changes from RFC 2068 regarding transfer codings
http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.6.3
分享到:
相关推荐
" Transfer-Encoding和HttpCore实现详解" ...Content-Encoding和Transfer-Encoding是两个不同的概念,Content-Encoding是对数据内容采用什么样的编码方式,而Transfer-Encoding是对数据传输采用什么样的编码。
标签:apache-any23-encoding-0.8.0-javadoc.jar,apache,any23,encoding,0.8.0,javadoc,jar包下载,依赖包
- **对生成对抗网络(GANs)在视频生成任务上有兴趣的工程师和开发者**:能够了解如何将GAN应用于视频处理领域,包括视频内容的生成和分析。 - **探索深度学习在视频处理和动作识别中的应用的数据科学家**:可以使用...
资源分类:Python库 所属语言:Python 资源全名:torch-encoding-1.2.1b20200625.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
《PyPI官网下载:torch-encoding-1.2.2b20200702.tar.gz——深入了解Python库的使用与功能》 在Python的生态中,PyPI(Python Package Index)扮演着至关重要的角色,它是全球最大的Python软件仓库,提供了无数的第...
总的来说,torch-encoding-1.2.0b20200428是Python开发者在进行深度学习和自然语言处理项目时的重要工具,它简化了预训练模型的使用,并提供了高效的工具来处理文本数据。对于那些希望在NLP领域探索创新的开发者来说...
赠送jar包:parquet-encoding-1.8.2.jar; 赠送原API文档:parquet-encoding-1.8.2-javadoc.jar; 赠送源代码:parquet-encoding-1.8.2-sources.jar; 赠送Maven依赖信息文件:parquet-encoding-1.8.2.pom; 包含...
如果“Accept-Encoding”包含“gzip, deflate”,则表明浏览器支持Gzip和Deflate两种压缩方式。 2. **检查文件类型与压缩配置**:如果确认浏览器支持压缩,Web服务器会进一步检查请求文件的类型及其压缩配置。对于...
simple-binary-encoding, 简单二进制编码( SBE ) 高性能消息编解码器 简单二进制编码( SBE )SBE 是一种用于编码和解码二进制应用程序消息的OSI层 6表示,用于低延迟的金融应用程序。 这个库包含了 Java 。C++ 。...
赠送jar包:parquet-encoding-1.10.1.jar; 赠送原API文档:parquet-encoding-1.10.1-javadoc.jar; 赠送源代码:parquet-encoding-1.10.1-sources.jar; 赠送Maven依赖信息文件:parquet-encoding-1.10.1.pom; ...
赠送jar包:parquet-encoding-1.10.0.jar; 赠送原API文档:parquet-encoding-1.10.0-javadoc.jar; 赠送源代码:parquet-encoding-1.10.0-sources.jar; 赠送Maven依赖信息文件:parquet-encoding-1.10.0.pom; ...
赠送jar包:parquet-encoding-1.10.1.jar; 赠送原API文档:parquet-encoding-1.10.1-javadoc.jar; 赠送源代码:parquet-encoding-1.10.1-sources.jar; 赠送Maven依赖信息文件:parquet-encoding-1.10.1.pom; ...
赠送jar包:parquet-encoding-1.8.2.jar; 赠送原API文档:parquet-encoding-1.8.2-javadoc.jar; 赠送源代码:parquet-encoding-1.8.2-sources.jar; 赠送Maven依赖信息文件:parquet-encoding-1.8.2.pom; 包含...
如果实体长度和传输长度不相等(例如设置了Transfer-Encoding),那么不能设置Content-Length。 4. 通过服务器关闭连接可以确定消息的传输长度,这种情况主要对应于短连接,即非keep-alive模式。 5. HTTP/1.1必须...
标签:apache-any23-encoding-0.9.0-sources.jar,apache,any23,encoding,0.9.0,sources,jar包下载,依赖包
标签:apache-any23-encoding-1.1.jar,apache,any23,encoding,1.1,jar包下载,依赖包
标签:apache-any23-encoding-1.0-sources.jar,apache,any23,encoding,1.0,sources,jar包下载,依赖包
为了确保VSFTPD正确地识别和处理中文编码,我们需要理解其内部的工作机制以及如何配置。 首先,FTP协议本身并不直接支持Unicode或UTF-8编码,而是使用ASCII编码,这就导致了在处理非ASCII字符时可能出现的问题。...
安装使用纱: $ yarn add -D serverless-content-encoding 使用npm: $ npm install --save-dev serverless-content-encoding配置将插件及其配置添加到您的serverless.yml文件中: plugins : - serverless-content-...