Got vyberá SOCKS agentov prostredníctvom svojich kľúčov HTTP a HTTPS
Priraďte SocksProxyAgent položkám agenta Got podľa cieľového protokolu a cestu HTTP/2 držte oddelene.
Objekt agent v Gote je indexovaný podľa cieľového protokolu. SOCKS pripojenie pre URL HTTPS preto patrí pod https, nie pod nový kľúč s názvom socks.
Pre existujúcu aplikáciu ESM, ktorá používa Got a socks-proxy-agent na ceste HTTP/1:
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();
Zoznam proxy SOCKS5 dodáva kandidátov pre proxy URL bez účtu z príkladu. Ten istý agent zvládne zobrazené položky HTTP aj HTTPS. Nadviaže SOCKS spojenie a potom cesta HTTPS vykoná TLS handshake s cieľom.
V tomto agentovi socks5h ponecháva preklad cieľového hostname na SOCKS proxy. socks5 namiesto toho volí lokálny preklad. Vlastný hostname proxy musí byť stále dostupný z procesu Node.
Slot agenta HTTP/2 v Gote očakáva iné rozhranie. Nekopírujte tohto agenta do agent.http2 a nepredpokladajte, že poskytuje podporu HTTP/2 proxy.
Nakonfigurovaného agenta pre záťaž znova použite a zničte ho, keď sa jeho vlastník vypne. Zlaďte verzie balíčkov s runtime Node aplikácie; tento príklad používa pomenovaný export SocksProxyAgent.