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.

Rilataj artikoloj