超时
编辑超时
编辑可以通过在构建 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();