Compartir a través de


HttpClientOptions Clase

public final class HttpClientOptions
extends ClientOptions

Opciones de configuración generales para HttpClient.

HttpClient Es posible que las implementaciones no admitan todas las opciones de configuración de esta clase.

Resumen del constructor

Constructor Description
HttpClientOptions()

Crea una nueva instancia de HttpClientOptions.

Resumen del método

Modificador y tipo Método y descripción
Configuration getConfiguration()

Obtiene el almacén de configuración que HttpClient usará .

Duration getConnectTimeout()

Obtiene el tiempo de espera de conexión para que se envíe una solicitud.

Duration getConnectionIdleTimeout()

Obtiene la duración del tiempo antes de cerrar una conexión inactiva.

Class<> getHttpClientProvider()

Obtiene el tipo de la HttpClientProvider implementación que se debe usar para construir una instancia de HttpClient.

Integer getMaximumConnectionPoolSize()

Obtiene el tamaño máximo del grupo de conexiones utilizado por el cliente HTTP subyacente.

ProxyOptions getProxyOptions()

Obtiene el ProxyOptions objeto que HttpClient va a usar.

Duration getReadTimeout()

Obtiene la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

Duration getResponseTimeout()

Obtiene la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

Duration getWriteTimeout()

Obtiene el tiempo de espera de escritura de una solicitud que se va a enviar.

HttpClientOptions readTimeout(Duration readTimeout)

Establece la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

HttpClientOptions responseTimeout(Duration responseTimeout)

Establece la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

HttpClientOptions setApplicationId(String applicationId)

Establece el identificador de la aplicación.

HttpClientOptions setConfiguration(Configuration configuration)

Establece el almacén de configuración que HttpClient usará .

HttpClientOptions setConnectTimeout(Duration connectTimeout)

Establece el tiempo de espera de conexión para que se envíe una solicitud.

HttpClientOptions setConnectionIdleTimeout(Duration connectionIdleTimeout)

Establece la duración del tiempo antes de una conexión inactiva.

HttpClientOptions setHeaders(Iterable<Header> headers)

Establece Header.

HttpClientOptions setHttpClientProvider(Class<? extends HttpClientProvider> httpClientProvider)

Establece el tipo de la HttpClientProvider implementación que se debe usar para construir una instancia de HttpClient.

HttpClientOptions setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)

Establece el tamaño máximo del grupo de conexiones utilizado por el cliente HTTP subyacente.

HttpClientOptions setProxyOptions(ProxyOptions proxyOptions)

Establece el ProxyOptions objeto que HttpClient va a usar.

HttpClientOptions setReadTimeout(Duration readTimeout)

Establece la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

HttpClientOptions setResponseTimeout(Duration responseTimeout)

Establece la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

HttpClientOptions setWriteTimeout(Duration writeTimeout)

Establece el tiempo de espera de escritura de una solicitud que se va a enviar.

Métodos heredados de ClientOptions

Métodos heredados de java.lang.Object

Detalles del constructor

HttpClientOptions

public HttpClientOptions()

Crea una nueva instancia de HttpClientOptions.

Detalles del método

getConfiguration

public Configuration getConfiguration()

Obtiene el almacén de configuración que HttpClient usará .

Returns:

Almacén de configuración que se va a usar.

getConnectTimeout

public Duration getConnectTimeout()

Obtiene el tiempo de espera de conexión para que se envíe una solicitud.

El tiempo de espera de conexión predeterminado es de 10 segundos.

Returns:

Tiempo de espera de conexión de una solicitud que se va a enviar.

getConnectionIdleTimeout

public Duration getConnectionIdleTimeout()

Obtiene la duración del tiempo antes de cerrar una conexión inactiva.

El tiempo de espera de inactividad de conexión predeterminado es de 60 segundos.

Returns:

Duración del tiempo de espera de inactividad de la conexión.

getHttpClientProvider

public Class getHttpClientProvider()

Obtiene el tipo de la HttpClientProvider implementación que se debe usar para construir una instancia de HttpClient.

Returns:

Implementación HttpClientProvider usada para crear una instancia de HttpClient.

getMaximumConnectionPoolSize

public Integer getMaximumConnectionPoolSize()

Obtiene el tamaño máximo del grupo de conexiones utilizado por el cliente HTTP subyacente.

La modificación del tamaño máximo del grupo de conexiones puede tener efectos en el rendimiento de una aplicación. Aumentar el grupo de conexiones máximo dará lugar a que haya más conexiones disponibles para una aplicación, pero puede dar lugar a más contención para los recursos de red. Se recomienda realizar análisis de rendimiento en diferentes tamaños máximos de grupo de conexiones para encontrar la configuración adecuada para una aplicación.

Este tamaño máximo del grupo de conexiones no es una configuración global, sino una configuración de nivel de instancia para cada HttpClient creado con este HttpClientOptions.

El tamaño máximo predeterminado del grupo de conexiones viene determinado por el cliente HTTP subyacente. Al establecer el tamaño máximo del grupo de conexiones en NULL, se restablece la configuración para usar el valor predeterminado determinado por el cliente HTTP subyacente.

Returns:

Tamaño máximo del grupo de conexiones.

getProxyOptions

public ProxyOptions getProxyOptions()

Obtiene el ProxyOptions objeto que HttpClient va a usar.

Returns:

Las opciones de proxy que se van a usar.

getReadTimeout

public Duration getReadTimeout()

Obtiene la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

El tiempo de espera de lectura predeterminado es de 60 segundos.

Returns:

Duración del tiempo de espera de lectura.

getResponseTimeout

public Duration getResponseTimeout()

Obtiene la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

El tiempo de espera de respuesta predeterminado es de 60 segundos.

Returns:

Duración del tiempo de espera de respuesta.

getWriteTimeout

public Duration getWriteTimeout()

Obtiene el tiempo de espera de escritura de una solicitud que se va a enviar.

El tiempo de espera de escritura predeterminado es de 60 segundos.

Returns:

Tiempo de espera de escritura de una solicitud que se va a enviar.

readTimeout

public HttpClientOptions readTimeout(Duration readTimeout)

Establece la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

El tiempo de espera de lectura comienza una vez que se desencadena la primera lectura de respuesta después de recibir la respuesta del servidor. Este tiempo de espera se desencadena periódicamente, pero no activará su operación si se ha completado otra operación de lectura entre cuando se desencadena y se completa el tiempo de espera.

Si readTimeout es null PROPERTY_AZURE_REQUEST_READ_TIMEOUT o se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún período de tiempo de espera a la lectura de respuesta. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de readTimeout .

El tiempo de espera de lectura predeterminado es de 60 segundos.

Parameters:

readTimeout - Duración del tiempo de espera de lectura.

Returns:

Objeto HttpClientOptions actualizado.

responseTimeout

public HttpClientOptions responseTimeout(Duration responseTimeout)

Establece la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

El tiempo de espera de respuesta comienza una vez que la escritura de la solicitud finaliza y finaliza una vez que se desencadena la primera lectura de respuesta cuando se recibe la respuesta del servidor.

Si responseTimeout es null PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT o se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún tiempo de espera a la respuesta. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de responseTimeout .

El tiempo de espera de respuesta predeterminado es de 60 segundos.

Parameters:

responseTimeout - Duración del tiempo de espera de respuesta.

Returns:

Objeto HttpClientOptions actualizado.

setApplicationId

public HttpClientOptions setApplicationId(String applicationId)

Establece el identificador de la aplicación.

applicationId se usa para configurar UserAgentPolicy con fines de telemetría y supervisión.

Consulte Azure Core: Directiva de telemetría para más información.

Ejemplos de código

Creación de ClientOptions con el identificador de aplicación "myApplicationId"

ClientOptions clientOptions = new ClientOptions()
     .setApplicationId("myApplicationId");

Overrides:

HttpClientOptions.setApplicationId(String applicationId)

Parameters:

applicationId

setConfiguration

public HttpClientOptions setConfiguration(Configuration configuration)

Establece el almacén de configuración que HttpClient usará .

Parameters:

configuration - Almacén de configuración que se va a usar.

Returns:

Objeto HttpClientOptions actualizado.

setConnectTimeout

public HttpClientOptions setConnectTimeout(Duration connectTimeout)

Establece el tiempo de espera de conexión para que se envíe una solicitud.

El tiempo de espera de conexión comienza una vez que la solicitud intenta conectarse al host remoto y finaliza cuando se resuelve la conexión.

Si connectTimeout es null PROPERTY_AZURE_REQUEST_CONNECT_TIMEOUT o se usará un tiempo de espera de 10 segundos, si es Duration menor o igual que cero, no se aplicará ningún tiempo de espera. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de connectTimeout .

El tiempo de espera de conexión predeterminado es de 10 segundos.

Parameters:

connectTimeout - Duración del tiempo de espera de conexión.

Returns:

Objeto HttpClientOptions actualizado.

setConnectionIdleTimeout

public HttpClientOptions setConnectionIdleTimeout(Duration connectionIdleTimeout)

Establece la duración del tiempo antes de una conexión inactiva.

El tiempo de espera de inactividad de la conexión comienza una vez que la conexión ha completado su última solicitud de red. Cada vez que se usa la conexión, se restablecerá el tiempo de espera de inactividad.

Si connectionIdleTimeout es null, se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún período de tiempo de espera. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de connectionIdleTimeout .

El tiempo de espera de inactividad de conexión predeterminado es de 60 segundos.

Parameters:

connectionIdleTimeout - Duración del tiempo de espera de inactividad de la conexión.

Returns:

Objeto HttpClientOptions actualizado.

setHeaders

public HttpClientOptions setHeaders(Iterable

headers)

Establece Header.

Los encabezados pasados se aplican a cada solicitud enviada con el cliente.

Esto sobrescribe todos los encabezados establecidos previamente.

Ejemplos de código

Crear ClientOptions con el encabezado "myCustomHeader":"myStaticValue"

ClientOptions clientOptions = new ClientOptions()
     .setHeaders(Collections.singletonList(new Header("myCustomHeader", "myStaticValue")));

Overrides:

HttpClientOptions.setHeaders(Iterable<Header> headers)

Parameters:

headers

setHttpClientProvider

public HttpClientOptions setHttpClientProvider(Class httpClientProvider)

Establece el tipo de la HttpClientProvider implementación que se debe usar para construir una instancia de HttpClient. Si el valor no se establece o es una cadena vacía, se usará la primera HttpClientProvider resuelta por ServiceLoader para crear una instancia de HttpClient. Si el valor se establece y no coincide con ningún HttpClientProvider resuelto por ServiceLoader , se producirá al IllegalStateException intentar crear una instancia de HttpClient.

Parameters:

httpClientProvider - Implementación HttpClientProvider usada para crear una instancia de HttpClient.

Returns:

Objeto HttpClientOptions actualizado.

setMaximumConnectionPoolSize

public HttpClientOptions setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)

Establece el tamaño máximo del grupo de conexiones utilizado por el cliente HTTP subyacente.

La modificación del tamaño máximo del grupo de conexiones puede tener efectos en el rendimiento de una aplicación. Aumentar el grupo de conexiones máximo dará lugar a que haya más conexiones disponibles para una aplicación, pero puede dar lugar a más contención para los recursos de red. Se recomienda realizar análisis de rendimiento en diferentes tamaños máximos de grupo de conexiones para encontrar la configuración adecuada para una aplicación.

Este tamaño máximo del grupo de conexiones no es una configuración global, sino una configuración de nivel de instancia para cada HttpClient creado con este HttpClientOptions.

El tamaño máximo predeterminado del grupo de conexiones viene determinado por el cliente HTTP subyacente. Al establecer el tamaño máximo del grupo de conexiones en NULL, se restablece la configuración para usar el valor predeterminado determinado por el cliente HTTP subyacente.

Parameters:

maximumConnectionPoolSize - Tamaño máximo del grupo de conexiones.

Returns:

Objeto HttpClientOptions actualizado.

setProxyOptions

public HttpClientOptions setProxyOptions(ProxyOptions proxyOptions)

Establece el ProxyOptions objeto que HttpClient va a usar.

Parameters:

proxyOptions - Las opciones de proxy que se van a usar.

Returns:

Objeto HttpClientOptions actualizado.

setReadTimeout

public HttpClientOptions setReadTimeout(Duration readTimeout)

Establece la duración del tiempo de espera de lectura que se usa al leer la respuesta del servidor.

El tiempo de espera de lectura comienza una vez que se desencadena la primera lectura de respuesta después de recibir la respuesta del servidor. Este tiempo de espera se desencadena periódicamente, pero no activará su operación si se ha completado otra operación de lectura entre cuando se desencadena y se completa el tiempo de espera.

Si readTimeout es null PROPERTY_AZURE_REQUEST_READ_TIMEOUT o se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún período de tiempo de espera a la lectura de respuesta. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de readTimeout .

El tiempo de espera de lectura predeterminado es de 60 segundos.

Parameters:

readTimeout - Duración del tiempo de espera de lectura.

Returns:

Objeto HttpClientOptions actualizado.

setResponseTimeout

public HttpClientOptions setResponseTimeout(Duration responseTimeout)

Establece la duración del tiempo de espera de respuesta que se usa al esperar a que un servidor responda.

El tiempo de espera de respuesta comienza una vez que la escritura de la solicitud finaliza y finaliza una vez que se desencadena la primera lectura de respuesta cuando se recibe la respuesta del servidor.

Si responseTimeout es null PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT o se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún tiempo de espera a la respuesta. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de responseTimeout .

El tiempo de espera de respuesta predeterminado es de 60 segundos.

Parameters:

responseTimeout - Duración del tiempo de espera de respuesta.

Returns:

Objeto HttpClientOptions actualizado.

setWriteTimeout

public HttpClientOptions setWriteTimeout(Duration writeTimeout)

Establece el tiempo de espera de escritura de una solicitud que se va a enviar.

El tiempo de espera de escritura no se aplica a toda la solicitud, sino a cada emisión que se envía a través del cable. Por ejemplo, un cuerpo de solicitud que emite búferes 108KB desencadenará 10 operaciones de escritura, el búfer de salida se comprobará periódicamente para determinar si sigue purgando.

Si writeTimeout es null PROPERTY_AZURE_REQUEST_WRITE_TIMEOUT o se usará un tiempo de espera de 60 segundos, si es menor Duration o igual que cero, no se aplicará ningún tiempo de espera de escritura. Al aplicar el tiempo de espera mayor de un milisegundo y se usará el valor de writeTimeout .

El tiempo de espera de escritura predeterminado es de 60 segundos.

Parameters:

writeTimeout - Duración del tiempo de espera de la operación de escritura.

Returns:

Objeto HttpClientOptions actualizado.

Se aplica a