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.

Súvisiace články