小编Dhr*_*uva的帖子

在 RequestConfig 和 SocketConfig 中设置套接字超时对于 HTTP 和 HTTPS 的工作方式不同

我已设置套接字超时SocketConfig并将 SocketConfig 设置为连接管理器

connManager.setDefaultSocketConfig(SocketConfig.custom().setSoTimeout(soTimeout).build())
Run Code Online (Sandbox Code Playgroud)

RequestConfig并通过将其设置为覆盖单个请求的套接字超时值

httpRequest.setConfig(RequestConfig.copy(defaultRequestConfig).setSocketTimeout(timeout).build())  
Run Code Online (Sandbox Code Playgroud)

参考链接

对于所有 http 请求,使用 RequestConfig 设置的新值将按预期覆盖旧值。但对于 https 请求,它始终考虑 SocketConfig 中设置的旧值。

在得知这可能是 4.3.1 参考链接中的问题后,我还将 httpclient 从 4.3.1 升级到 4.3.6 。但即使这样也没有帮助我解决问题。
我错过了什么吗?关于如何解决这个问题有什么想法吗?

java https apache-httpclient-4.x

2
推荐指数
1
解决办法
4205
查看次数

标签 统计

apache-httpclient-4.x ×1

https ×1

java ×1