שרת Proxy

public final class Proxy


מייצג שרת proxy שאפשר להשתמש בו בשביל CronetEngine.

אופן השליחה של בקשות HTTP דרך שרתי proxy תלוי במגוון גורמים. לדוגמה: סוג ה-proxy שבו נעשה שימוש, גרסת ה-HTTP שבה נעשה שימוש, האם הבקשה נשלחת ליעד עם סכימת URI של http או https. בנוסף, השאלה אם נוצר מנהור דרך ה-proxy תלויה גם היא בגורמים האלה.

סיכום

סוגי רכיבים שהוצבו בתוך רכיבים אחרים

public abstract class Proxy.HttpConnectCallback

הגדרת מנהרות שנוצרו באמצעות HTTP CONNECT.

פעולות שאפשר לבצע בתגובה לקריאה של onResponseReceived.

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable

מייצג בקשת HTTP CONNECT שנשלחת לשרת ה-proxy.

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

סכימות שנתמכות בהגדרת שרת proxy.

ערכים קבועים

static final int

יוצרים חיבור בטקסט גלוי לשרת ה-proxy עצמו.

static final int

יוצרים חיבור מאובטח לשרת ה-proxy עצמו.

‫methods ציבוריים

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
)

יוצר proxy מסוג HTTP.

ערכים קבועים

SCHEME_HTTP

public static final int SCHEME_HTTP = 0

יוצרים חיבור בטקסט גלוי לשרת ה-proxy עצמו.

SCHEME_HTTPS

public static final int SCHEME_HTTPS = 1

יוצרים חיבור מאובטח לשרת ה-proxy עצמו.

‫methods ציבוריים

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
)

יוצר proxy מסוג HTTP.

כששולחים בקשות HTTP דרך שרת proxy של HTTP, ההחלטה אם לקרוא ל-callback או לא תלויה בסכימת ה-URI של היעד:

  • עבור יעדים עם סכימת URI של https, ‏ CronetEngine יוצר מנהרה דרך ה-proxy. המנהרה נוצרת באמצעות בקשת HTTP CONNECT. במקרה כזה, יתבצע קריאה ל- callback כדי לשלוט בבקשת HTTP CONNECT שמשמשת ליצירת המנהרה.
  • ליעדים עם סכימת URI של HTTP,‏ CronetEngine שולח בקשת HTTP שמכילה את ה-URI המלא של היעד לשרת ה-proxy. במקרה כזה, הפונקציה callback לא תופעל.
פרמטרים
@Proxy.Scheme int scheme

Scheme, שביחד עם host ו-port מזהה את שרת ה-proxy הזה.

@NonNull String host

מארח לא ריק, שביחד עם scheme ו-port, מזהה את השרת הזה.

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

יציאה שמזהה את ה-proxy הזה, יחד עם scheme ו-host. הערך שלו חייב להיות בין 0 ל-65535.

@NonNull Executor executor

המוציא לפועל שבו תופעל callback.

@NonNull Proxy.HttpConnectCallback callback

פונקציית Callback שמאפשרת אינטראקציה עם בקשת ה-HTTP CONNECT והתגובה שלה, ש-CronetEngine שולח כדי ליצור מנהרות דרך ה-Proxy.