Proxy.HttpConnectCallback

abstract class Proxy.HttpConnectCallback


تتحكّم هذه السياسة في الأنفاق التي تم إنشاؤها من خلال HTTP CONNECT. سيتم استدعاء جميع الطرق في Executor المحدّد في 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

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

الثوابت

const Int

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

const Int

يتم إنشاء نفق.

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

الوظائف العامة

abstract Unit

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

abstract Int

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

الثوابت

RESPONSE_ACTION_CLOSE

const val RESPONSE_ACTION_CLOSE = 0: Int

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

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

RESPONSE_ACTION_PROCEED

const val RESPONSE_ACTION_PROCEED = 1: Int

يتم إنشاء نفق.

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

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

HttpConnectCallback

HttpConnectCallback()

الوظائف العامة

onBeforeRequest

abstract fun onBeforeRequest(request: Proxy.HttpConnectCallback.Request): Unit

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

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

المعلَمات
request: Proxy.HttpConnectCallback.Request

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

onResponseReceived

@Proxy.HttpConnectCallback.OnResponseReceivedAction
abstract fun onResponseReceived(
    responseHeaders: (Mutable)List<Pair<String!, String!>!>,
    statusCode: Int
): Int

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

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

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

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

المعلَمات
responseHeaders: (Mutable)List<Pair<String!, String!>!>

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

statusCode: Int

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

المرتجعات
Int

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