Matapos ma-initialize ang gustong CefRequestContext, itakda ang preference ng proxy nito sa UI thread ng browser process bago magsimula ang gawaing pag-browse:

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);

Suriin ang configured at itago ang error kapag nabigo. Ipinapakita ng CanSetPreference kung mababago ng user ang preference; ang pagpili sa command line sa startup ay maaaring mag-lock nito laban sa interface na ito.

Ibigay ang parehong context kapag ginagawa ang browser. Ang context na na-configure ngunit hindi ginagamit ay hindi nakakaapekto sa browser na nasa global na context.

Suriin din ang paghihiwalay. Maaaring magbahagi ang mga context ng pinagbabatayang storage o network state sa pamamagitan ng shared cache path o malinaw na relasyon. Ang IsSharingWith ang sinusuportahang paraan upang suriin ang pagbabahaging iyon. Ang mga malayang sesyon ng proxy ay nangangailangan ng malayang piniling context at patakaran sa storage.

Nakakaapekto ang preference sa susunod na gawain; hindi nito maigagalaw ang umiiral na tunnel. Panatilihin ang navigation URL bilang destinasyon at ang server ng preference bilang tagapamagitan. Para sa pinapayagang pampublikong pag-browse na walang naka-configure na proxy authentication, ang listahan ng HTTP proxy ay makapagbibigay ng mga kandidatong halaga ng HTTP server. Kung sinasadya ng mga startup switch na pagmay-arian ang ruta, panatilihin ang patakarang iyon sa halip na asahan na matatalo ito ng susunod na pagsulat ng preference. Iniiwasan din ng sinusuportahang request-context API ang muling pagbuo ng tinanggal na CefProxyHandler.

Kaugnay na mga artikulo