Proxy.HttpConnectCallback.Request

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable


Representa una solicitud HTTP CONNECT que se envía al servidor proxy.

Se puede llamar a todos los métodos de forma síncrona o asíncrona, en cualquier subproceso.

Resumen

Constructores públicos

Métodos públicos

abstract void

Libera todos los recursos asociados con la solicitud de establecimiento de túnel.

abstract void
proceed(@NonNull List<Pair<StringString>> extraHeaders)

Permite que continúe la solicitud de establecimiento de túnel y agrega los encabezados adicionales a la solicitud HTTP CONNECT subyacente.

Constructores públicos

Solicitud

public Request()

Métodos públicos

cerrar

public abstract void close()

Libera todos los recursos asociados con la solicitud de establecimiento de túnel.

Si se llama a este método después de proceed, no tendrá ningún efecto en la solicitud de establecimiento de túnel y en la solicitud HTTP CONNECT subyacente, ya que seguirán procesándose.

Si se llama a este método antes de proceed, se cancelarán la solicitud de establecimiento de túnel y la solicitud HTTP CONNECT subyacente.

Cuando se cancela una solicitud de establecimiento de túnel, CronetEngine la interpretará como una falla en el uso del Proxy asociado. Luego, CronetEngine intentará usar el siguiente Proxy en la lista que se pasó a ProxyOptions (consulta la documentación de esa clase para obtener más información).

continuar

public abstract void proceed(@NonNull List<Pair<StringString>> extraHeaders)

Permite que continúe la solicitud de establecimiento de túnel y agrega los encabezados adicionales a la solicitud HTTP CONNECT subyacente.

Parámetros
@NonNull List<Pair<StringString>> extraHeaders

Es una lista de encabezados que cumplen con RFC 2616 que se agregarán a la solicitud HTTP CONNECT dirigida al servidor proxy. Esta lista puede estar vacía, en cuyo caso no se agregará ningún encabezado. Nota: Estos encabezados no se agregarán a las solicitudes HTTP que pasarán por el túnel una vez que se establezca.

Arroja
java.lang.IllegalArgumentException

Si alguno de los encabezados no cumple con RFC 2616.

java.lang.IllegalStateException

Si se llama a este método varias veces o después de que se llamó a close.