Објекат agent у Got-у се индексира према протоколу одредишта. Зато SOCKS веза за HTTPS URL припада испод https, а не испод новог кључа названог socks.

За постојећу ESM апликацију која користи Got и socks-proxy-agent на путањи 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();

Листа SOCKS5 проксија даје кандидате за прокси URL без налога из примера. Исти агент може да опслужи приказане уносе HTTP и HTTPS. Он успоставља SOCKS везу, а затим путања HTTPS обавља TLS руковање са одредиштем.

У овом агенту socks5h препушта разрешавање имена хоста одредишта SOCKS проксију. socks5 уместо тога бира локално разрешавање. Сопствено име хоста проксија и даље мора бити доступно из Node процеса.

Слот агента HTTP/2 у Got-у очекује другачији интерфејс. Не копирајте овај агент у agent.http2 и не претпостављајте да пружа подршку за HTTP/2 прокси.

Поново користите конфигурисани агент за оптерећење и уништите га када се његов власник искључи. Ускладите верзије пакета са Node окружењем апликације; овај пример користи именовани извоз SocksProxyAgent.

Повезани чланци