目前我正在用JDK-11的新Httporg.apache.http.*
库替换现有的http 客户端库。有许多令人兴奋的新功能,但是我没有找到关于“如何在新的 HTTPClient 中设置 RetryRequestHandler”的任何内容。以前的 Apache HttpClient 构建器的代码片段:
...
...
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create()
.setDefaultRequestConfig(config)
.setConnectionManager(connectionManager)
if(retryCount > 0) {
httpClientBuilder.setRetryHandler(new RetryRequestHandler(retryCount, url));
}
if (proxyHost) {
HttpHost proxy = new HttpHost(proxyHost, proxyPort, "http");
httpClientBuilder.setProxy(proxy);
}
...
...
这里的 RetryRequestHandler 是 DefaultHttpRequestRetryHandler 的扩展
public class RetryRequestHandler extends DefaultHttpRequestRetryHandler{...}
在 java-11 的新 HttpClient 中没有设置重试的选项。有什么解决方法吗?