Po zainicjowaniu zamierzonego CefRequestContext ustaw jego preferencję serwera proxy w wątku UI procesu przeglądarki, zanim rozpocznie się praca przeglądania:

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

Sprawdź configured i zachowaj błąd w razie niepowodzenia. CanSetPreference wskazuje, czy użytkownik może zmieniać preferencję; wybór z wiersza poleceń przy uruchomieniu może ją zablokować wobec tego interfejsu.

Przekaż ten sam kontekst podczas tworzenia przeglądarki. Skonfigurowany, ale nieużywany kontekst nie wpływa na przeglądarkę na kontekście globalnym.

Sprawdź także izolację. Konteksty mogą współdzielić stan magazynu lub sieci poprzez wspólne ścieżki pamięci podręcznej albo jawne relacje. IsSharingWith to obsługiwany sposób badania tego współdzielenia. Niezależne sesje proxy wymagają niezależnie wybranych kontekstów i polityki magazynu.

Preferencja wpływa na późniejszą pracę; nie może przenieść istniejącego tunelu. Zachowaj adres URL nawigacji jako cel, a serwer z preferencji jako pośrednika. W przypadku dozwolonego publicznego przeglądania bez skonfigurowanego uwierzytelniania proxy lista serwerów proxy HTTP może dostarczyć kandydujące wartości serwera HTTP. Jeśli przełączniki uruchamiania celowo posiadają trasę, utrzymuj tę politykę, zamiast oczekiwać, że późniejszy zapis preferencji ją nadpisze. Obsługiwane API kontekstu żądania pozwala też uniknąć odtwarzania usuniętego CefProxyHandler.

Powiązane artykuły