V asynchronní funkci hlavního procesu s existujícím oknem se dotážete relace, kterou okno skutečně používá:

const selectedSession = mainWindow.webContents.session;
const route = await selectedSession.resolveProxy('https://api.example/');

Současné API vrací Promise, který se vyřeší na řetězec. Před zkoumáním změny konfigurace počkejte na probíhající operaci setProxy.

Výsledkem je rozhodnutí o proxy specifické pro URL. Hypotetická hodnota může být:

PROXY proxy-a.example:8080; PROXY proxy-b.example:8080; DIRECT

To je seřazený seznam kandidátů v syntaxi stylu PAC, ne jedno jméno hostitele. DIRECT výslovně představuje přímého kandidáta. Prázdný výsledek zpracujte samostatně; nepovažujte mlčky každý prázdný nebo nerozpoznaný řetězec za DIRECT.

Dotazujte se skutečné cílové URL, protože rozhodnutí PAC a obcházení se mohou lišit podle cíle. Stejně tak okno s rozdělenou relací nemusí mít stejnou politiku jako session.defaultSession.

Řešení proxy může zahrnovat práci s automatickou konfigurací, například získání skriptu PAC. Vrácená volba stále není dokončeným požadavkem na cílový web, úspěšným přihlášením k proxy ani důkazem jeho veřejné výstupní IP. Při srovnání s výsledkem následného požadavku si ponechte relaci, URL a vyřešené kandidáty.

Související články