java.net.SocketException:连接重置,大 HTTP headers
java.net.SocketException: Connection reset, large HTTP headers
我正在使用
org.apache.http.impl.client.CloseableHttpClient
发送请求。每当 header 之一的大小很大(大约 103452
字节)时,我得到一个:
java.net.SocketException:连接重置
服务器可能没有重置连接,因为来自其他 java 应用程序的其他客户端(可能使用 spring OAUTH/REST 客户端)似乎能够使用服务同时发送同样大的 headers.
尽管正确的解决方法是首先避免发送如此大的 header,但是否有 org.apache.http.impl.client.CloseableHttpClient
的配置可以防止它在发送大 [=] 时崩溃29=]s?
客户端构建有:
HttpClientBuilder.create().useSystemProperties().build()
您如何确定服务器没有拒绝请求?
HTTP 规范没有施加限制,我不认为 Apache 客户端在其默认配置中施加了限制。
但是,Web 服务器确实...有关详细信息,请参阅 Maximum on http header values?。请注意,网络服务器施加的限制是针对所有 header 的组合大小,而不是单个 header.
我正在使用
org.apache.http.impl.client.CloseableHttpClient
发送请求。每当 header 之一的大小很大(大约 103452
字节)时,我得到一个:
java.net.SocketException:连接重置
服务器可能没有重置连接,因为来自其他 java 应用程序的其他客户端(可能使用 spring OAUTH/REST 客户端)似乎能够使用服务同时发送同样大的 headers.
尽管正确的解决方法是首先避免发送如此大的 header,但是否有 org.apache.http.impl.client.CloseableHttpClient
的配置可以防止它在发送大 [=] 时崩溃29=]s?
客户端构建有:
HttpClientBuilder.create().useSystemProperties().build()
您如何确定服务器没有拒绝请求?
HTTP 规范没有施加限制,我不认为 Apache 客户端在其默认配置中施加了限制。
但是,Web 服务器确实...有关详细信息,请参阅 Maximum on http header values?。请注意,网络服务器施加的限制是针对所有 header 的组合大小,而不是单个 header.