Після ініціалізації потрібного CefRequestContext задайте його налаштування проксі в потоці UI процесу браузера до початку роботи з перегляду:

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

Перевірте configured і збережіть помилку в разі невдачі. CanSetPreference показує, чи може користувач змінювати налаштування; вибір у командному рядку під час запуску може заблокувати її для цього інтерфейсу.

Передайте той самий контекст під час створення браузера. Налаштований, але невикористаний контекст не впливає на браузер у глобальному контексті.

Перевірте й ізоляцію. Контексти можуть спільно використовувати базовий стан сховища або мережі через спільні шляхи кешу чи явні зв'язки. IsSharingWith — підтримуваний спосіб дослідити це спільне використання. Незалежним сеансам проксі потрібні незалежно вибрані контексти й політика сховища.

Налаштування впливає на подальшу роботу; воно не може перемістити наявний тунель. Залиште URL навігації пунктом призначення, а сервер із налаштування — посередником. Для дозволеного публічного перегляду без налаштованої автентифікації проксі список HTTP-проксі може дати кандидатні значення HTTP-сервера. Якщо перемикачі запуску навмисно володіють маршрутом, підтримуйте цю політику, а не сподівайтеся, що пізніший запис налаштування її перевершить. Підтримуваний API контексту запиту також уникає повторної збірки вилученого CefProxyHandler.

Схожі статті