Properti proxy CFStream bergantung pada jenis stream
Pilih properti HTTP atau SOCKS sesuai dukungan protokol stream pada aplikasi CFStream yang sudah ada.
Dalam aplikasi yang memelihara kode CFStream, pilih properti proxy sesuai jenis stream yang dikonfigurasi. Stream permintaan HTTP memiliki penanganan protokol yang tidak diperoleh stream soket biasa hanya dari kamus propertinya.
| Koneksi yang dibangun | Konfigurasi terdokumentasi |
|---|---|
| HTTP CFStream melalui proxy HTTP | kCFStreamPropertyHTTPProxy |
| CFStream melalui proxy SOCKS | kCFStreamPropertySOCKSProxy |
Apple mendeskripsikan properti HTTP secara khusus sebagai konfigurasi HTTP CFStream. Stream seperti itu dapat dibuat dari permintaan CFHTTPMessage dengan CFReadStreamCreateForHTTPRequest. Membuka stream tersebut menyerialkan dan mengirim permintaan HTTP.
Properti SOCKS menerima CFDictionary yang memuat setidaknya kunci host dan port proxy SOCKS. Itulah properti publik yang bersesuaian untuk penanganan SOCKS pada CFStream. Untuk uji TCP publik yang diizinkan tanpa kredensial proxy, daftar proxy SOCKS menawarkan nilai host dan port kandidat untuk kamus tersebut. Cocokkan dengan protokol yang didukung stream dan verifikasi akses ke tujuan dan port sebenarnya.
Terapkan properti yang dipilih sebelum membuka stream dan periksa hasil Boolean dari pemanggilan penetapan properti. Properti yang ditolak dapat menandakan bahwa stream atau nilai tidak mendukung konfigurasi yang diminta.
Untuk lalu lintas TCP arbitrer melalui proxy HTTP, gunakan konektor yang melakukan negosiasi CONNECT yang diperlukan. Negosiasi itu adalah pekerjaan protokol; membuat stream mentah hanya ke alamat proxy belum melakukannya.