Une fois le CefRequestContext voulu initialisé, définissez sa préférence de proxy sur le fil d'interface du processus navigateur avant de commencer le travail de navigation :

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

Vérifiez configured et conservez l'erreur en cas d'échec. CanSetPreference indique si la préférence est modifiable par l'utilisateur ; un choix en ligne de commande au démarrage peut la verrouiller face à cette interface.

Fournissez ce même contexte lors de la création du navigateur. Un contexte configuré mais inutilisé n'affecte pas un navigateur placé sur le contexte global.

Vérifiez aussi l'isolation. Les contextes peuvent partager un état de stockage ou de réseau sous-jacent via des chemins de cache communs ou des relations explicites. IsSharingWith est le moyen pris en charge d'examiner ce partage. Les sessions proxy indépendantes ont besoin de contextes et d'une politique de stockage choisis indépendamment.

La préférence agit sur le travail ultérieur ; elle ne peut pas déplacer un tunnel existant. Gardez l'URL de navigation comme destination et le serveur de la préférence comme intermédiaire. Pour une navigation publique autorisée sans authentification proxy configurée, la liste de proxys HTTP peut fournir des valeurs de serveur HTTP candidates. Si des commutateurs de démarrage possèdent délibérément la route, maintenez cette politique plutôt que d'attendre qu'une écriture ultérieure de la préférence la supplante. L'API de contexte de requête prise en charge évite aussi de reconstruire le CefProxyHandler supprimé.

Articles similaires