Got velger SOCKS-agenter via HTTP- og HTTPS-nøklene sine
Tildel en SocksProxyAgent til Gots agentoppføringer per destinasjonsprotokoll, og hold HTTP/2-stien atskilt.
Gots agent-objekt er nøklet etter destinasjonsprotokollen. En SOCKS-tilkobling for en HTTPS-URL hører derfor under https, ikke under en ny nøkkel kalt socks.
For en eksisterende ESM-applikasjon som bruker Got og socks-proxy-agent på HTTP/1-stien:
import got from 'got';
import {SocksProxyAgent} from 'socks-proxy-agent';
const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const body = await got('https://www.example.org/', {
http2: false,
agent: {
http: agent,
https: agent,
},
timeout: {request: 20000},
}).text();
SOCKS5-proxylisten gir kandidater til eksempelets proxy-URL uten konto. Den samme agenten kan håndtere HTTP- og HTTPS-oppføringene som vises. Den oppretter SOCKS-tilkoblingen, deretter utfører HTTPS-stien TLS-håndtrykket med destinasjonen.
I denne agenten overlater socks5h oppslaget av destinasjonsvertsnavnet til SOCKS-proxyen. socks5 velger i stedet lokal oppslag. Selve proxyens vertsnavn må fortsatt være nåbart fra Node-prosessen.
Gots HTTP/2-agentplass forventer et annet grensesnitt. Ikke kopier denne agenten inn i agent.http2 og anta at den gir HTTP/2-proxystøtte.
Gjenbruk den konfigurerte agenten for arbeidsbelastningen, og ødelegg den når eieren avsluttes. Tilpass pakkeversjonene til applikasjonens Node-kjøremiljø; dette eksempelet bruker den navngitte SocksProxyAgent-eksporten.