Undicik dispatcher baten bidez bideratzen du eskaera. Sortu ProxyAgent hautatutako HTTP proxyarentzat eta eman fetch deiari, prozesu osoaren dispatcher globala aldatu ordez.

npm install [email protected]
import { fetch, ProxyAgent } from 'undici';

const dispatcher = new ProxyAgent('http://203.0.113.10:8080');

try {
  const response = await fetch('https://example.com/', {
    dispatcher,
    signal: AbortSignal.timeout(15000),
  });

  console.log(response.status);
  console.log(await response.text());
} finally {
  await dispatcher.close();
}

Gorde programa .mjs fitxategi gisa edo erabili ES moduluen proiektua. Ordeztu dokumentazioaren IPa HTTP proxyen zerrendako HTTP proxy batekin. Inportazioak berariaz Undiciren fetch ezarpena erabiltzen du; dispatcher aukera, beraz, erakutsitako bezeroarena da.

Egiaztatu Node bateragarritasuna IPa erruduntzat jo aurretik

Undicik onartutako Node bertsioak paketearen argitalpenaren araberakoak dira. Adibideak Undici 8.12.3 erabiltzen du eta Node 22.19.0 edo berriagoa behar du. Modulu-kargaren edo motorraren bertsioaren errorea eskaera proxyra heldu aurretik gertatzen da. Egiaztatu instalatutako paketearen eskakizunak, ez pentsatu Node guztiek Undici berriena exekutatzen dutenik.

Agent bakarrak eskaera errepikatuak zerbitza ditzake

Programa laburrak amaitzean dispatcherra ixten du. Aplikazio aktiboak amaiera-puntu beretik hainbat eskaera bidaltzen baditu, mantendu agent lan-karga horretarako eta itxi lana amaitzean. URL bakoitzerako agent sortu eta ixteak konexioen berrerabilera erabilgarria eragozten du.

Dispatcher globala aldaketa zabalagoa nahi denean soilik da egokia. Berariaz emateak proxy IP probatzea errazten du beste osagaiaren irteerako eskaerak aldatu gabe.

Begiratu erantzuna eta hutsegitearen etapa

Fetchek ez ditu HTTP errore-egoera guztiak baztertutako Promise gisa hartzen. 403 edo 429 proxyak ekarritako benetako webgunearen erantzuna izan daiteke. Konexio- edo tunel-erroreak eskaera bazter dezake erantzun-objektua egon aurretik. Irakurri egoera deiak jaurtitako erroreetatik aparte.

Autentifikazioa behar bada, Undiciren ProxyAgent-ek eraikitzaileko aukerak eskaintzen ditu. Ez gehitu proxy-baimenaren goiburua webgunerako eskaeraren goiburuei; agent-ek beste konexio-tarte bat kudeatzen du.

Erlazionatutako artikuluak