Proxy

public final class Proxy


Reprezentuje serwer proxy, który może być używany przez CronetEngine.

Sposób wysyłania żądań HTTP przez serwery proxy zależy od wielu czynników. Na przykład od typu używanego serwera proxy, używanej wersji HTTP oraz od tego, czy żądanie jest wysyłane do miejsca docelowego ze schematem URI http czy https. Dodatkowo to, czy tunel przez serwer proxy zostanie utworzony, zależy od tych czynników.

Podsumowanie

Typy zagnieżdżone

public abstract class Proxy.HttpConnectCallback

Kontroluje tunele utworzone za pomocą HTTP CONNECT.

Działania, które można wykonać w odpowiedzi na wywołanie onResponseReceived.

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable

Reprezentuje żądanie HTTP CONNECT wysyłane do serwera proxy.

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

Schematy obsługiwane podczas definiowania serwera proxy.

Stałe

static final int

Nawiązywanie połączenia z serwerem proxy w postaci zwykłego tekstu.

static final int

Nawiązywanie bezpiecznego połączenia z serwerem proxy.

Metody publiczne

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
)

Tworzy serwer proxy HTTP.

Stałe

SCHEME_HTTP

public static final int SCHEME_HTTP = 0

Nawiązywanie połączenia z serwerem proxy w postaci zwykłego tekstu.

SCHEME_HTTPS

public static final int SCHEME_HTTPS = 1

Nawiązywanie bezpiecznego połączenia z serwerem proxy.

Metody publiczne

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
)

Tworzy serwer proxy HTTP.

Podczas wysyłania żądań HTTP przez serwer proxy HTTP to, czy callback zostanie wywołany, zależy od schematu URI miejsca docelowego:

  • W przypadku miejsc docelowych ze schematem URI https CronetEngine tworzy tunel przez serwer proxy. Tunel jest tworzony za pomocą żądania HTTP CONNECT. W takim przypadku callback zostanie wywołany, aby kontrolować żądanie HTTP CONNECT używane do utworzenia tunelu.
  • W przypadku miejsc docelowych ze schematem URI http CronetEngine wysyła do serwera proxy żądanie HTTP zawierające cały adres URI miejsca docelowego. W takim przypadku callback nie zostanie wywołany.
Parametry
@Proxy.Scheme int scheme

Scheme, który wraz z host i port identyfikuje ten serwer proxy.

@NonNull String host

Niepusty host, który wraz z scheme i port identyfikuje ten serwer proxy.

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

Port, który wraz z scheme i host identyfikuje ten serwer proxy. Jego wartość musi mieścić się w zakresie [0, 65535].

@NonNull Executor executor

Wykonawca, w którym zostanie wywołany callback.

@NonNull Proxy.HttpConnectCallback callback

Wywołanie zwrotne, które umożliwia interakcję z żądaniem HTTP CONNECT i jego odpowiedzią, które CronetEngine wysyła w celu utworzenia tuneli przez serwer proxy.