超时
编辑超时编辑
可以通过在构建 RestClient
时通过其构建器提供 RequestConfigCallback
实例来配置请求超时。该接口有一个方法,该方法接收 org.apache.http.client.config.RequestConfig.Builder
实例作为参数,并具有相同的返回类型。可以修改请求配置构建器,然后返回。在以下示例中,我们增加了连接超时(默认为 1 秒)和套接字超时(默认为 30 秒)。
RestClientBuilder builder = RestClient.builder( new HttpHost("localhost", 9200)) .setRequestConfigCallback( new RestClientBuilder.RequestConfigCallback() { @Override public RequestConfig.Builder customizeRequestConfig( RequestConfig.Builder requestConfigBuilder) { return requestConfigBuilder .setConnectTimeout(5000) .setSocketTimeout(60000); } });
也可以使用 RequestOptions 为每个请求设置超时,这将覆盖 RestClient customizeRequestConfig。
RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(5000) .setSocketTimeout(60000) .build(); RequestOptions options = RequestOptions.DEFAULT.toBuilder() .setRequestConfig(requestConfig) .build();