Qt HttpProxy مقابل HttpCachingProxy: قدرات CONNECT
ميّز نوع HttpProxy في Qt القادر على CONNECT من نوع HttpCachingProxy المقتصر على الطلبات.
تفرّق Qt بين وكيل HTTP قادر على النفق ووكيل HTTP المخصّص للتخزين المؤقت فقط. يحتوي الاسمان على HTTP، لكن قدراتهما على الاتصال تختلف.
| نوع Qt | دور الاتصال |
|---|---|
| HttpProxy | دعم HTTP CONNECT لاتصالات TCP الصادرة |
| HttpCachingProxy | طلبات HTTP عادية في عميل متوافق قائم على الطلبات |
| Socks5Proxy | تفاوض SOCKS5 مع قدرات النقل الموثّقة لديه |
يمكن لـQNetworkAccessManager الذي يجري طلب HTTP عاديًا أن يستخدم النوع الموجّه للطلبات. أما QTcpSocket الذي يحتاج نفق بايتات فيتطلب وكيلاً يمتلك TunnelingCapability. وتحذّر Qt تحديدًا من تثبيت افتراضي للتطبيق دون تلك القدرة عندما يجب أن تستخدمه مآخذ TCP العامة.
اختر نوع البروتوكول قبل إسناد نقطة النهاية. لطلب HTTP عام مسموح دون مصادقة وكيل، تقدّم قائمة وكلاء HTTP عناوين؛ ومع ذلك يجب أن يوفّر نوع Qt القدرة التي يحتاجها ذلك الطلب. وإعطاء HttpCachingProxy المنفذ الذي تستخدمه خدمة CONNECT لا يضيف القدرة الناقصة إلى ذلك الاختيار في Qt.
كما أن تصنيف التخزين المؤقت فقط لا يضمن أن كل استجابة ستُخزَّن أو تُعاد استخدامها من الخادم البعيد. فهو يصف أسلوب استخدام الوكيل الذي تدعمه واجهة العميل، بينما تظل سياسة استجابة HTTP تحكم إعادة استخدام ذاكرة التخزين المؤقت.