Got бира SOCKS агенте кроз своје HTTP и HTTPS кључеве
Доделите SocksProxyAgent записима агента Got према протоколу одредишта и држите путању HTTP/2 одвојено.
Објекат 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.