Konfigurera en SOCKS5-proxy för en Electron-session
Konfigurera en dedikerad Electron-session innan du skapar dess fönster och ta hänsyn till återanvända anslutningar och begränsningar i SOCKS-autentisering.
Efter Electrons programklara fas konfigurerar du den session som fönstret faktiskt ska använda:
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 }
});Använd programmets befintliga importer/livscykel. Det här fönstrets förfrågningar använder proxySession; godtyckliga Node-klienter och andra partitioner ärver den inte. För tillåten offentlig surfning erbjuder SOCKS5-proxylistan kandidatslutpunkter; välj en som inte kräver ett SOCKS-konto för Chromiums stödda väg.
För en redan använd session, bestäm vad som ska hända med poolade anslutningar. Electron dokumenterar closeAllConnections() där en gammal rutt annars kunde ligga kvar; att anropa den kan avbryta pågående arbete. En inställningsuppdatering flyttar inte befintliga sockets.
Använd resolveProxy på den faktiska URL:en för att granska valet. Bekräfta anslutning/utgång separat, inklusive kringgåenden och oberoende konfigurerade sessioner.
Chromiums SOCKS5-implementering saknar stöd för SOCKS-autentiseringsmetod. HTTP-inloggnings-callbacks och ett lösenord i URL:en lägger inte till det. För en tjänst som kräver inloggningsuppgifter, använd en dokumenterad kompatibel ordning i stället för att ta bort autentisering från en delad lyssnare.