Proxy

public final class Proxy


Đại diện cho một proxy mà CronetEngine có thể sử dụng.

Cách gửi yêu cầu HTTP thông qua các proxy phụ thuộc vào nhiều yếu tố. Ví dụ: loại proxy đang được sử dụng, phiên bản HTTP đang được sử dụng, liệu yêu cầu có đang được gửi đến một đích đến có lược đồ URI http hay https hay không. Ngoài ra, việc thiết lập đường hầm thông qua proxy hay không cũng phụ thuộc vào các yếu tố này.

Tóm tắt

Các loại lồng nhau

public abstract class Proxy.HttpConnectCallback

Kiểm soát các đường hầm được thiết lập thông qua HTTP CONNECT.

Các thao tác có thể được thực hiện để phản hồi khi onResponseReceived được gọi.

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable

Biểu thị một yêu cầu HTTP CONNECT đang được gửi đến máy chủ proxy.

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

Các lược đồ được hỗ trợ khi xác định một proxy.

Hằng số

static final int

Thiết lập một kết nối văn bản thuần tuý với chính proxy.

static final int

Thiết lập một kết nối an toàn với chính proxy.

Phương thức công khai

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
)

Tạo một proxy HTTP.

Hằng số

SCHEME_HTTP

public static final int SCHEME_HTTP = 0

Thiết lập một kết nối văn bản thuần tuý với chính proxy.

SCHEME_HTTPS

public static final int SCHEME_HTTPS = 1

Thiết lập một kết nối an toàn với chính proxy.

Phương thức công khai

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
)

Tạo một proxy HTTP.

Khi gửi yêu cầu HTTP thông qua một proxy HTTP, việc callback có được gọi hay không phụ thuộc vào lược đồ URI của đích đến:

  • Đối với những đích đến có lược đồ URI https, CronetEngine sẽ thiết lập một đường hầm thông qua proxy. Đường hầm được thiết lập thông qua yêu cầu HTTP CONNECT. Trong trường hợp này, callback sẽ được gọi để kiểm soát yêu cầu HTTP CONNECT dùng để thiết lập đường hầm.
  • Đối với những đích đến có lược đồ URI http, CronetEngine sẽ gửi một yêu cầu HTTP (chứa toàn bộ URI của đích đến) đến proxy. Trong trường hợp này, callback sẽ không được gọi.
Tham số
@Proxy.Scheme int scheme

Scheme cùng với hostport xác định proxy này.

@NonNull String host

Máy chủ lưu trữ không trống, cùng với schemeport, xác định proxy này.

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

Cổng cùng với schemehost xác định proxy này. Giá trị của tham số này phải nằm trong khoảng [0, 65535].

@NonNull Executor executor

Trình thực thi nơi callback sẽ được gọi.

@NonNull Proxy.HttpConnectCallback callback

Lệnh gọi lại cho phép tương tác với yêu cầu HTTP CONNECT và phản hồi của yêu cầu đó mà CronetEngine gửi để thiết lập các đường hầm thông qua proxy.