Použijte SOCKS agenta s HTTPS klientem Node
Připojte socks-proxy-agent k základnímu HTTPS požadavku Node a zachovejte rozdíl mezi agentem Node a dispatcherem fetch.
Agent s podporou SOCKS může navázat spojení s cílem pro základního HTTPS klienta Node. Když je socks-proxy-agent v aplikaci k dispozici:
const https = require('node:https');
const { SocksProxyAgent } = require('socks-proxy-agent');
const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const request = https.get('https://www.example.com/', {
agent,
signal: AbortSignal.timeout(15000),
}, (response) => {
console.log(response.statusCode);
response.on('error', console.error);
response.resume();
});
request.on('error', console.error);
Nahraďte ukázkový koncový bod neověřeným kandidátem ze seznamu SOCKS5 proxy pro tento veřejný HTTPS požadavek. Zpětné volání po vytištění stavu odpověď vyčerpá; tělo zde spotřebujte, pokud ho aplikace potřebuje. Agenta znovu použijte pro přidělené operace a poté ho zničte, když se tato klientská politika zruší a jeho práce skončí.
Zvolte, kde se překládá název cíle
Při zpracování URL v socks-proxy-agent ponechává socks5h překlad názvu hostitele cíle na cestě přes proxy; socks5 ho překládá lokálně. To je důležité, když je název dostupný jen v síti proxy.
URL HTTPS zachovává identitu webu. Agent provede SOCKS vyjednávání, než Node zahájí TLS k tomuto webu.
Pro službu s uživatelským jménem a heslem vložte přihlašovací údaje do URL proxy pomocí kódování komponent URI pro rezervované znaky. Úplnou URL držte mimo protokoly. Hlavičky Authorization cíle patří účtu webu.
Tento agent pracuje se základními API pro HTTP/HTTPS požadavky Node. fetch v Node používá rozhraní dispatcheru, proto podporovanou integraci SOCKS tohoto klienta nastavte samostatně.