‫Proxy.HttpConnectCallback

public abstract class Proxy.HttpConnectCallback


يتحكّم في الأنفاق التي يتم إنشاؤها من خلال HTTP CONNECT. سيتم استدعاء جميع الطرق على أداة التنفيذ المحدّدة في createHttpProxy.

لا يتم استدعاء الطرق ضمن هذه الفئة إلا عندما يكون كلا الشرطَين التاليَين صحيحَين:

- HttpEngine must establish a connection to the destination of an HTTP request
- The destination of the HTTP request has an https URI scheme
يُرجى الرجوع إلى مستندات createHttpProxy لفهم كيفية تحديد CronetEngine ما إذا كان سيتم إنشاء نفق من خلال خادم وكيل HTTP.

ملخّص

الأنواع المضمّنة

الإجراءات التي يمكن تنفيذها ردًا على استدعاء onResponseReceived

public abstract class Proxy.HttpConnectCallback.Request implements AutoCloseable

يمثّل طلب HTTP CONNECT الذي يتم إرساله إلى خادم الوكيل.

الثوابت

static final int

يؤدي هذا الإجراء إلى إغلاق اتصال النفق، ما يمنع استخدامه لإرسال طلبات HTTP.

static final int

يؤدي هذا الإجراء إلى متابعة إنشاء نفق.

طُرق وضع التصميم العامة

الإجراءات العامة

abstract void

يتم استدعاء هذا الإجراء قبل إرسال طلب HTTP CONNECT إلى خادم الوكيل لإنشاء نفق.

abstract int

يتم استدعاء هذا الإجراء بعد تلقّي ردّ على طلب HTTP CONNECT الذي تم إرساله إلى خادم الوكيل لإنشاء نفق.

الثوابت

RESPONSE_ACTION_CLOSE

public static final int RESPONSE_ACTION_CLOSE = 0

يؤدي هذا الإجراء إلى إغلاق اتصال النفق، ما يمنع استخدامه لإرسال طلبات HTTP.

عند إغلاق اتصال نفق، سيفسّر CronetEngine ذلك على أنّه تعذُّر استخدام Proxy المرتبط. سيحاول CronetEngine بعد ذلك استخدام Proxy التالي في القائمة التي تم تمريرها إلى ProxyOptions (يُرجى الرجوع إلى مستندات هذه الفئة لمزيد من المعلومات).

RESPONSE_ACTION_PROCEED

public static final int RESPONSE_ACTION_PROCEED = 1

يؤدي هذا الإجراء إلى متابعة إنشاء نفق.

لا يضمن هذا الإجراء إنشاء النفق بنجاح واستخدامه لإرسال طلبات HTTP، إذ سيُجري CronetEngine عمليات تحقّق إضافية قبل ذلك. وبناءً على نتائج هذه العمليات، قد يقرّر CronetEngine إغلاق اتصال النفق. إذا أغلق CronetEngine اتصال النفق، سيُعتبر ذلك تعذُّر استخدام Proxy المرتبط. سيحاول CronetEngine بعد ذلك استخدام Proxy التالي في القائمة التي تم تمريرها إلى ProxyOptions (يُرجى الرجوع إلى مستندات هذه الفئة لمزيد من المعلومات)

طُرق وضع التصميم العامة

HttpConnectCallback

public HttpConnectCallback()

الإجراءات العامة

onBeforeRequest

public abstract void onBeforeRequest(@NonNull Proxy.HttpConnectCallback.Request request)

يتم استدعاء هذا الإجراء قبل إرسال طلب HTTP CONNECT إلى خادم الوكيل لإنشاء نفق.

يسمح هذا الإجراء بتعديل الطلب المذكور أو إلغائه قبل إرساله إلى خادم الوكيل. يُرجى الرجوع إلى Request لمعرفة كيفية تعديل الطلب أو إلغائه.

المعلَمات
@NonNull Proxy.HttpConnectCallback.Request request

يمثّل طلب HTTP CONNECT الذي سيتم إرساله إلى خادم الوكيل.

onResponseReceived

@Proxy.HttpConnectCallback.OnResponseReceivedAction
public abstract int onResponseReceived(
    @NonNull List<Pair<StringString>> responseHeaders,
    int statusCode
)

يتم استدعاء هذا الإجراء بعد تلقّي ردّ على طلب HTTP CONNECT الذي تم إرساله إلى خادم الوكيل لإنشاء نفق. يسمح هذا الإجراء بقراءة العناوين ورمز الحالة.

عند إرسال طلبات HTTP إلى وجهة باستخدام مخطط معرّف موارد منتظم (URI) يبدأ بـ https، لن يستخدم CronetEngine أبدًا خادم وكيل لم يتم استدعاء معاودة الاتصال onResponseReceived الخاصة به.

لن يتم استدعاء هذا الإجراء لطلبات HTTP التي ستنتقل عبر النفق بعد إنشائه.

إذا طرحت هذه الطريقة أي java.lang.Throwable، سيكون مصير النفق كما لو تم عرض RESPONSE_ACTION_CLOSE (لن يتم رصد java.lang.Throwable).

المعلَمات
@NonNull List<Pair<StringString>> responseHeaders

قائمة العناوين الواردة في الردّ على طلب HTTP CONNECT

int statusCode

رمز حالة HTTP الوارد في الردّ على طلب HTTP CONNECT

المرتجعات
int

قيمة OnResponseReceivedAction تمثّل الإجراء الذي يجب اتخاذه بشأن اتصال النفق هذا يُرجى الرجوع إلى مستندات OnResponseReceivedAction.