Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
(spring boot、cxf、tomcat)内容长度与传输编码:分块?_Tomcat_Soap_Spring Boot_Cxf_Transfer Encoding - Fatal编程技术网

(spring boot、cxf、tomcat)内容长度与传输编码:分块?

(spring boot、cxf、tomcat)内容长度与传输编码:分块?,tomcat,soap,spring-boot,cxf,transfer-encoding,Tomcat,Soap,Spring Boot,Cxf,Transfer Encoding,我正在努力解决一个问题。http响应头:传输编码:分块 我们在spring boot+嵌入式tomcat中有一个CXF-SOAP Web服务 SOAP响应得到一个内容长度头,并且没有传输编码。。。。 我想这很正常吧 不幸的是,我们有一些遗留客户端黑客, 这似乎只适用于传输编码:分块和无内容长度 有没有办法强制服务器应用程序响应传输编码:chunked 究竟是什么决定了生成哪种响应格式 它是可配置的吗?通过在响应时设置缓冲区大小 response.setBufferSize()设置响应大小的内容长

我正在努力解决一个问题。http响应头:
传输编码:分块

我们在spring boot+嵌入式tomcat中有一个CXF-SOAP Web服务

SOAP响应得到一个
内容长度
头,并且没有
传输编码
。。。。 我想这很正常吧

不幸的是,我们有一些遗留客户端黑客, 这似乎只适用于
传输编码:分块
和无
内容长度

有没有办法强制服务器应用程序响应
传输编码:chunked

究竟是什么决定了生成哪种响应格式


它是可配置的吗?

通过在响应时设置缓冲区大小

response.setBufferSize()设置响应大小的内容长度标题。一旦响应大小超过缓冲区大小,它就会退回到传输编码:Chunked。缓冲区大小应设置为适当的值。将其设置为更高的值将在刷新之前缓冲内存中的所有响应。因此,应将该值设置为乐观大小

默认情况下,Tomcat缓冲区大小设置为8K


其他选项:您可以为您的服务添加响应过滤器,并在所需的集合标题中添加响应过滤器。

通过设置响应的缓冲区大小

response.setBufferSize()设置响应大小的内容长度标题。一旦响应大小超过缓冲区大小,它就会退回到传输编码:Chunked。缓冲区大小应设置为适当的值。将其设置为更高的值将在刷新之前缓冲内存中的所有响应。因此,应将该值设置为乐观大小

默认情况下,Tomcat缓冲区大小设置为8K


其他选项:您可以为您的服务添加响应过滤器,并在所需的设置标头中添加响应过滤器。

服务器应用程序将根据请求http标头以您希望的方式响应

如果请求http标头包含:

Accept-Encoding: chunked
而且只有
分块
,服务器应用程序才会响应标题和内容
传输编码:分块


因此,如果无法发出指示客户端功能的正确http请求,则可以添加反向代理,通过更改或添加
Accept Encoding:chunked
头来修改请求。

服务器应用程序将根据请求http头的不同,以您希望的方式响应

如果请求http标头包含:

Accept-Encoding: chunked
而且只有
分块
,服务器应用程序才会响应标题和内容
传输编码:分块

因此,如果无法发出指示客户端功能的正确http请求,可以添加反向代理,通过更改或添加
Accept Encoding:chunked
头来修改请求