Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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
Java org.apache.http.HttpException:不支持的内容编码:无_Java_Http_Apache Httpcomponents - Fatal编程技术网

Java org.apache.http.HttpException:不支持的内容编码:无

Java org.apache.http.HttpException:不支持的内容编码:无,java,http,apache-httpcomponents,Java,Http,Apache Httpcomponents,我使用ApacheHTTP组件将POST请求发送到不属于我的服务器(因此我无法修改其配置) 服务器响应我,设置Content-Encoding:none头,导致org.apache.http.HttpException:Unsupported Content-Encoding:none异常 我在StackOverflow上找到了可以使用HttpClients.custom().disableContentCompression().build()禁用RequestAcceptEncoding和R

我使用ApacheHTTP组件将POST请求发送到不属于我的服务器(因此我无法修改其配置)

服务器响应我,设置
Content-Encoding:none
头,导致
org.apache.http.HttpException:Unsupported Content-Encoding:none
异常

我在StackOverflow上找到了可以使用
HttpClients.custom().disableContentCompression().build()
禁用
RequestAcceptEncoding
ResponseContentEncoding
拦截器的地方,因此不引发异常。但是,我不希望以这种方式全局重新配置我的
HttpClient

在不向HttpClient添加更改的情况下,是否有解决此问题的方法

作为说明,我根本不必阅读响应体,因为它是空的。我只需要能够读取响应代码(即
200OK


谢谢您的时间。

几个月后,我终于找到了这个问题的解决方案


使用拦截器修复错误的内容编码头有一个解决方法。

我遇到了类似的问题。一个简单的修复方法是在http客户端生成器中禁用压缩

HttpClientBuilder clientBuilder = HttpClients.custom();
clientBuilder.disableContentCompression();
HttpClient client = clientBuilder.build();

服务器的响应无效。你报告错误了吗?遗憾的是,报告错误在这种情况下没有帮助,因为服务器的所有者不会修复它。这一点我肯定,因为我知道他们。我必须在我这方面找到一些解决方法。我已经决定,我将简单地将HttpClient.execute()放在一个try-catch中,其中包含该异常的空catch块,直到找到真正的解决方案。