Qt HttpProxy vs. HttpCachingProxy: Kemampuan CONNECT
Bedakan HttpProxy Qt yang mendukung CONNECT dari tipe HttpCachingProxy yang hanya untuk permintaan.
Qt membedakan proxy HTTP yang mampu melakukan terowongan dari tipe proxy HTTP yang hanya untuk cache. Kedua nama memuat HTTP, tetapi kemampuan koneksinya berbeda.
| Tipe Qt | Peran koneksi |
|---|---|
| HttpProxy | Dukungan HTTP CONNECT untuk koneksi TCP keluar |
| HttpCachingProxy | Permintaan HTTP biasa pada klien berbasis permintaan yang kompatibel |
| Socks5Proxy | Negosiasi SOCKS5 dengan kemampuan transport yang didokumentasikan |
QNetworkAccessManager yang membuat permintaan HTTP biasa dapat memakai tipe yang berorientasi permintaan. QTcpSocket yang membutuhkan terowongan byte memerlukan proxy dengan TunnelingCapability. Qt secara khusus memperingatkan agar tidak memasang default aplikasi tanpa kemampuan itu ketika soket TCP umum harus memakainya.
Pilih tipe protokol sebelum menetapkan titik akhir. Untuk permintaan HTTP publik yang diizinkan tanpa autentikasi proxy, daftar proxy HTTP menawarkan alamat; tipe Qt tetap harus menyediakan kemampuan yang dibutuhkan permintaan itu. Memberi HttpCachingProxy port yang dipakai layanan CONNECT tidak menambahkan kemampuan yang hilang pada pilihan Qt tersebut.
Label hanya-cache juga tidak menjanjikan bahwa setiap respons akan disimpan atau dipakai ulang oleh server jarak jauh. Label itu menjelaskan gaya pemakaian proxy yang didukung antarmuka klien, sedangkan kebijakan respons HTTP tetap mengatur pemakaian ulang cache.