Настройване на SOCKS5 прокси за една сесия на Electron
Настройте отделна сесия на Electron преди създаването на прозореца ѝ и отчитайте преизползваните връзки и ограниченията за удостоверяване на SOCKS.
След етапа на готовност на приложението Electron настройте сесията, която прозорецът действително ще използва:
const proxySession = session.fromPartition('persist:proxy-work');
await proxySession.setProxy({
mode: 'fixed_servers',
proxyRules: 'socks5://127.0.0.1:1080'
});
const window = new BrowserWindow({
webPreferences: { session: proxySession }
});Използвайте съществуващите импорти/жизнен цикъл на приложението. Заявките на този прозорец използват proxySession; произволни Node клиенти и други дялове не го наследяват. За разрешено публично разглеждане списъкът със SOCKS5 проксита предлага кандидат-крайни точки; изберете такава, която не изисква SOCKS акаунт за поддържания път на Chromium.
За вече използвана сесия решете какво да правите с обединените връзки. Electron документира closeAllConnections() там, където стара маршрутизация иначе би останала; извикването ѝ може да прекъсне текуща работа. Актуализацията на настройки не мести съществуващите сокети.
Използвайте resolveProxy за действителния URL, за да проверите избора. Потвърдете връзката/изхода отделно, включително обхожданията и независимо конфигурираните сесии.
Реализацията на SOCKS5 в Chromium няма поддръжка на метод за удостоверяване на SOCKS. HTTP колбек за вход и парола в URL не я добавят. За услуга, изискваща идентификационни данни, използвайте документирана съвместима схема, вместо да премахвате удостоверяването от споделен слушател.