Atur proxy pada konteks permintaan CEF
Beri konteks peramban CEF proxy tetap melalui API preferensi yang didukung dan periksa apakah kebijakan startup mengizinkan perubahan itu.
Setelah CefRequestContext yang dimaksud diinisialisasi, atur preferensi proxinya pada thread UI proses peramban sebelum pekerjaan penjelajahan dimulai:
auto rule = CefDictionaryValue::Create();
rule->SetString("mode", "fixed_servers");
rule->SetString("server", "http://proxy.example:8080");
auto value = CefValue::Create();
value->SetDictionary(rule);
CefString error;
bool configured = context->SetPreference("proxy", value, error);Periksa configured dan simpan galat bila gagal. CanSetPreference menunjukkan apakah preferensi dapat diubah pengguna; pilihan baris perintah saat startup dapat menguncinya terhadap antarmuka ini.
Berikan konteks yang sama saat membuat peramban. Konteks terkonfigurasi yang tidak dipakai tidak memengaruhi peramban pada konteks global.
Periksa juga isolasi. Konteks dapat berbagi status penyimpanan atau jaringan yang mendasari melalui jalur cache bersama atau hubungan eksplisit. IsSharingWith adalah cara yang didukung untuk memeriksa pembagian itu. Sesi proxy independen memerlukan konteks dan kebijakan penyimpanan yang dipilih secara independen.
Preferensi memengaruhi pekerjaan berikutnya; ia tidak dapat memindahkan terowongan yang sudah ada. Pertahankan URL navigasi sebagai tujuan dan server preferensi sebagai perantara. Untuk penjelajahan publik yang diizinkan tanpa autentikasi proxy, daftar proxy HTTP dapat menyediakan nilai server HTTP kandidat. Jika sakelar startup sengaja memiliki rute, pertahankan kebijakan itu alih-alih mengharapkan penulisan preferensi berikutnya mengalahkannya. API konteks permintaan yang didukung juga menghindari pembangunan ulang CefProxyHandler yang dihapus.