CloseableHttpClient可以通过设置连接超时时间和请求超时时间来控制请求的超时时间。连接超时时间是指连接到服务器的时间,而请求超时时间是指等待服务器响应的时间。

连接超时时间可以通过设置ConnectionRequestTimeout和ConnectTimeout属性来控制。例如,以下代码设置连接超时时间为5秒:

CloseableHttpClient httpClient = HttpClients.custom()
                .setDefaultRequestConfig(RequestConfig.custom()
                        .setConnectionRequestTimeout(5000)
                        .setConnectTimeout(5000)
                        .build())
                .build();

请求超时时间可以通过设置SocketTimeout属性来控制。例如,以下代码设置请求超时时间为10秒:

CloseableHttpClient httpClient = HttpClients.custom()
                .setDefaultRequestConfig(RequestConfig.custom()
                        .setSocketTimeout(10000)
                        .build())
                .build();

需要注意的是,以上代码设置的超时时间是全局的,即对所有请求生效。如果需要对单个请求设置不同的超时时间,可以在创建HttpUriRequest对象时设置RequestConfig属性。例如,以下代码设置单个请求的超时时间:

HttpGet httpGet = new HttpGet(url);
RequestConfig config = RequestConfig.custom()
                .setConnectionRequestTimeout(5000)
                .setConnectTimeout(5000)
                .setSocketTimeout(10000)
                .build();
httpGet.setConfig(config);
``
CloseableHttpClient设置timeout

原文地址: http://www.cveoy.top/t/topic/fn0M 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录