Наладзіць проксі 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 гэтага не дадаюць. Для сэрвісу, які патрабуе ўліковых даных, выкарыстоўвайце дакументаваную сумяшчальную схему замест выдалення аўтэнтыфікацыі з агульнага слухача.