我试图在Transfer-Encoding:chunked
上了解更多信息。提到一些文章:
http://zoompf.com/blog/2012/05/too-chunky和"Transfer-Encoding: chunked" header in PHP。
我仍然没有得到非常清晰的画面。我理解设置此编码允许服务器将块中的内容设置为浏览器,并在使网站响应的同时导致部分内容呈现。
如果我在IBM WAS上托管了一个提供动态内容的Web应用程序(例如:基于JSF的Web应用程序),那么大多数网页都设计为服务器丰富的静态内容,包含大量的CSS和JS文件+动态内容。如何为我的页面设置transfer-encoding'chunked'?换句话说:
'Transfer-Encoding: chunked'
,以及如何为该页面设置该页面? 您的个人经历对我的理解肯定是有价值的。
答案 0 :(得分:35)
Transfer-Encoding: chunked
。但是,在发送第一个字节之前,如果总内容长度未知,则需要 。
答案 1 :(得分:6)
当服务器需要发送大量数据时,服务器会使用分块编码,因为它并不确切知道数据的大小(长度)。在HTTP术语中,当服务器发送响应时,服务器省略Content-Length头。相反,服务器以十六进制格式写入当前块的长度,然后是\ r \ n,然后是块,然后是\ r \ n(内容以十六进制的块大小开头,后跟块)
此功能可用于渐进式渲染;但是服务器需要尽可能地刷新数据,以便客户端可以逐步呈现内容(如果是html,css等)
当服务器大量向客户端推送数据时,通常会使用此功能 - 通常是大尺寸(兆/千兆)