Proxy

public final class Proxy


Stellt einen Proxy dar, der von CronetEngine verwendet werden kann.

Wie HTTP-Anfragen über Proxys gesendet werden, hängt von verschiedenen Faktoren ab. Beispiele: Art des verwendeten Proxys, verwendete HTTP-Version, ob die Anfrage an ein Ziel mit einem http- oder https-URI-Schema gesendet wird. Außerdem hängt es von diesen Faktoren ab, ob ein Tunnel über den Proxy eingerichtet wird oder nicht.

Zusammenfassung

Verschachtelte Typen

public abstract class Proxy.HttpConnectCallback

Steuert Tunnel, die über HTTP CONNECT eingerichtet werden.

Aktionen, die als Reaktion auf den Aufruf von onResponseReceived ausgeführt werden können.

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable

Stellt eine HTTP CONNECT-Anfrage dar, die an den Proxyserver gesendet wird.

@Retention(value = RetentionPolicy.SOURCE)
@IntDef(value = )
public annotation Proxy.Scheme

Schemata, die beim Definieren eines Proxys unterstützt werden.

Konstanten

static final int

Stellt eine Klartextverbindung zum Proxy selbst her.

static final int

Stellt eine sichere Verbindung zum Proxy selbst her.

Öffentliche Methoden

static @NonNull Proxy
createHttpProxy(
    @Proxy.Scheme int scheme,
    @NonNull String host,
    @IntRange(from = 0, to = 65535) int port,
    @NonNull Executor executor,
    @NonNull Proxy.HttpConnectCallback callback
)

Erstellt einen HTTP-Proxy.

Konstanten

SCHEME_HTTP

public static final int SCHEME_HTTP = 0

Stellt eine Klartextverbindung zum Proxy selbst her.

SCHEME_HTTPS

public static final int SCHEME_HTTPS = 1

Stellt eine sichere Verbindung zum Proxy selbst her.

Öffentliche Methoden

createHttpProxy

public static @NonNull Proxy createHttpProxy(
    @Proxy.Scheme int scheme,
    @NonNull String host,
    @IntRange(from = 0, to = 65535) int port,
    @NonNull Executor executor,
    @NonNull Proxy.HttpConnectCallback callback
)

Erstellt einen HTTP-Proxy.

Ob callback aufgerufen wird, hängt beim Senden von HTTP-Anfragen über einen HTTP-Proxy vom URI-Schema des Ziels ab:

  • Bei Zielen mit einem https-URI-Schema stellt CronetEngine einen Tunnel über den Proxy her. Der Tunnel wird über eine HTTP CONNECT-Anfrage eingerichtet. In diesem Fall wird callback aufgerufen, um die HTTP CONNECT-Anfrage zu steuern, die zum Einrichten des Tunnels verwendet wird.
  • Bei Zielen mit einem http-URI-Schema sendet CronetEngine eine HTTP-Anfrage mit dem vollständigen URI des Ziels an den Proxy. In diesem Fall wird callback nicht aufgerufen.
Parameter
@Proxy.Scheme int scheme

Scheme, das diesen Proxy zusammen mit host und port identifiziert.

@NonNull String host

Nicht leerer Host, der diesen Proxy zusammen mit scheme und port identifiziert.

@IntRange(from = 0, to = 65535) int port

Port, der diesen Proxy zusammen mit scheme und host identifiziert. Der Wert muss zwischen 0 und 65535 liegen.

@NonNull Executor executor

Executor, in dem callback aufgerufen wird.

@NonNull Proxy.HttpConnectCallback callback

Callback, mit dem Sie mit der HTTP CONNECT-Anfrage und der zugehörigen Antwort interagieren können, die CronetEngine sendet, um Tunnel über den Proxy einzurichten.