java – Tomcat 7,Spring rest模板应用程序在浏览器中生成err_invalid_chunked_encoding

我有一个Tomcat 7,Spring 4.2’RestController’的REST API实现,它似乎在返回JSON响应时为少数API调用产生’ERR_INVALID_CHUNKED_ENCODING’.

创建ResponseEntity的代码相同.但是对于少数API调用,“Content-Length”设置正确,其他调用“Transfer-Encoding”设置为Chunked.

private CacheControl cacheControl = CacheControl.noStore().mustRevalidate();    

protected <T> ResponseEntity<TNRestResponse<T>> createEntity(TNRestResponse<T> res) {
        return ResponseEntity.ok().cacheControl(cacheControl).body(res);
}

奇怪的部分是创建ERR_INVALID_CHUNKED_ENCODING的相同API调用的响应似乎在另一个环境中正常工作.唯一的区别是客户端和服务在有问题的场景中在同一台服务器上运行.

已经尝试的解决方案是手动设置Content-Length,这似乎导致客户端文件过早结束.JSON长度只有大约468个字符,但客户端只接收409个字符,即使服务器日志显示完整响应已经已发送,连接已关闭.

我们在这个问题的解决方案中迷失了,因为它是在不同环境中奇怪地运行的相同代码.我试图在tomcat上检查server.xml中的压缩设置.但是一切看起来都很好.

还禁用了IE和chrome中的代理设置.

任何有用的输入或见解都会非常好吗?提前致谢.

最佳答案
跟着这些步骤:

1) Go to your OS’s Control panel > internet options > Connections >
LAN Settings or to your browser settings.

2) Deselect “Use Proxy” for your LAN or for your browser.

ERR_INVALID_CHUNKED_ENCODING

Original answer

Another original answer

转载注明原文:java – Tomcat 7,Spring rest模板应用程序在浏览器中生成err_invalid_chunked_encoding - 代码日志