Got elektas SOCKS-agentojn per siaj HTTP kaj HTTPS ŝlosiloj
Atribuu SocksProxyAgent al la agentaj eroj de Got laŭ la celprotokolo, tenante la HTTP/2 vojon aparte.
La agent-objekto de Got estas ŝlosilita laŭ la celprotokolo. SOCKS-konekto por HTTPS-URL do apartenas sub https, ne sub nova ŝlosilo nomata socks.
Por ekzistanta ESM-aplikaĵo uzanta Got kaj socks-proxy-agent sur la HTTP/1 vojo:
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();
La listo de SOCKS5-prokuroj liveras kandidatojn por la senkonta prokura URL de la ekzemplo. La sama agento povas priservi la montritajn HTTP kaj HTTPS erojn. Ĝi starigas la SOCKS-konekton, poste la HTTPS vojo plenumas sian TLS-manpremon kun la celo.
En ĉi tiu agento socks5h lasas la solvon de la cela gastigantnomo al la SOCKS-prokuro. socks5 anstataŭe elektas lokan solvon. La gastigantnomo de la prokuro mem ankoraŭ devas esti atingebla el la Node-procezo.
La HTTP/2-agenta fako de Got atendas alian interfacon. Ne kopiu ĉi tiun agenton en agent.http2 kaj supozu, ke ĝi provizas HTTP/2-prokuran subtenon.
Reuzu la agorditan agenton por la laborŝarĝo kaj detruu ĝin kiam ĝia posedanto fermiĝas. Agordu pakaĵversiojn al la Node-rultempo de la aplikaĵo; ĉi tiu ekzemplo uzas la nomatan SocksProxyAgent-eksporton.