Connection and connection request timeout

后端 未结 3 1147
萌比男神i
萌比男神i 2020-12-15 17:43

I am using Http Apache Components to perform the http interactions. I need to adjust my http client. For this purpose I have two parameters: connection timeout and connectio

3条回答
  •  挽巷
    挽巷 (楼主)
    2020-12-15 18:07

    From the documentation:

    /**
     * Returns the timeout in milliseconds used when requesting a connection
     * from the connection manager. A timeout value of zero is interpreted
     * as an infinite timeout.
     * 

    * A timeout value of zero is interpreted as an infinite timeout. * A negative value is interpreted as undefined (system default). *

    *

    * Default: {@code -1} *

    */ public int getConnectionRequestTimeout() { return connectionRequestTimeout; } /** * Determines the timeout in milliseconds until a connection is established. * A timeout value of zero is interpreted as an infinite timeout. *

    * A timeout value of zero is interpreted as an infinite timeout. * A negative value is interpreted as undefined (system default). *

    *

    * Default: {@code -1} *

    */ public int getConnectTimeout() { return connectTimeout; }

    This is how the code should look:

    HttpClientBuilder clientBuilder = HttpClientBuilder.create();
    RequestConfig.Builder requestBuilder = RequestConfig.custom();
    // Connection Timeout to establish a connection
    requestBuilder = requestBuilder.setConnectTimeout(connectTimeoutMillis);
    // Timeout to get a connection from the connection manager for the Http Client
    requestBuilder = requestBuilder.setConnectionRequestTimeout(requestTimeoutMillis);
    // Timeout between two data packets from the server
    requestBuilder = requestBuilder.setSocketTimeout(requestTimeoutMillis);
    clientBuilder.setDefaultRequestConfig(requestBuilder.build());
    CloseableHttpClient httpClient = clientBuilder.build();
    

提交回复
热议问题