Transfer-Encoding: chunked 表示输出的内容长度不能确定,普通的静态页面、图片之类的基本上都用不到这个。

但动态页面就有可能会用到,但我也注意到大部分asp,php,asp.net动态页面输出的时候大部分还是使用Content-Length,没有使用Transfer-Encoding: chunked。

不过如果结合:Content-Encoding: gzip 使用的时候,Transfer-Encoding: chunked还是比较有用的。

记得以前实现:Content-Encoding: gzip 输出时,先把整个压缩后的数据写到一个很大的字节数组里(如 ByteArrayOutputStream),然后得到数组大小 -> Content-Length。

如果结合Transfer-Encoding: chunked使用,就不必申请一个很大的字节数组了,可以一块一块的输出,更科学,占用资源更少。

发现淘宝网使用Transfer-Encoding: chunked的次数较多。

下面是一个标准的 Header 

HTTP/1.1 200 OK
Server: Tengine
Date: Mon, 05 Sep 2011 14:30:44 GMT
Content-Type: application/x-javascript
Last-Modified: Thu, 27 May 2010 07:19:58 GMT
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding
Expires: Thu, 02 Sep 2021 14:30:44 GMT
Cache-Control: max-age=315360000
Content-Encoding: gzip

\r\n

<chunk-size> \r\n   (其中,chunk-size = chunk-data.getBytes().length,不包含\r\n)

<chunk-data> \r\n

<chunk-size> \r\n

<chunk-data> \r\n

<0> \r\n\r\n  (chunk 结束)

-----------------------------------------------------------

下面是一个截图:

最新文章

  1. 读&lt;&lt;领域驱动设计-软件核心复杂性应对之道&gt;&gt;有感
  2. 社区活动分享PPT:使用微软开源技术开发微服务
  3. ES5和ES6中的继承 图解
  4. [转载]jQuery1.9完全删除live事件
  5. Bookstore project using XAMPP 详细配置 Part 3
  6. linux如何查看系统信息
  7. (OAF)jdeveloper集成log4j并将日志输出到指定文件并写入数据库
  8. Java生成唯一的ID
  9. UVa 10256 (判断两个凸包相离) The Great Divide
  10. redisbook笔记——redis内部数据结构
  11. 【Beta】Daily Scrum Meeting——Day7
  12. [LeetCode] Transpose Matrix 转置矩阵
  13. notify.min.js
  14. go-ethereum源码分析 PartIII 共识流程
  15. Android性能优化问题总结
  16. python------Socket网略编程+动态导入模块
  17. mysql学习笔记--数据库设计
  18. fabric 持久化
  19. C# 中对于json的解析小结
  20. 盒子变形-盒子加padding后 变形问题,

热门文章

  1. Jenkins持续集成构建自动化测试项目
  2. Linux实践:模块
  3. 软件工程第二次程序的作业:Java计算器实验
  4. Leetcode——50.Pow(x, n)
  5. 最新一课 老师指点用Listview适配器
  6. Linux入门笔记
  7. 去掉UITabBar和NavigationBar上的黑线
  8. PHP预防跨站脚本(XSS)攻击且不影响html代码显示效果
  9. 圆桌的项目Alpha冲刺(团队)
  10. shell脚本--文件查找之find命令