Undici leet eng Ufro iwwer en Dispatcher. Erstellt e ProxyAgent fir de gewielten HTTP-Proxy a gitt en am fetch-Opruff mat, amplaz de globale Dispatcher vum ganze Prozess ze änneren.

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();
}

Späichert de Programm als .mjs-Datei oder benotzt en ES-Modul-Projet. Ersetzt d’Dokumentatiouns-IP duerch en HTTP-Proxy aus der Lëscht vun HTTP-Proxye. Den Import benotzt bewosst dem Undici seng fetch-Ëmsetzung; d’Optioun dispatcher gehéiert domat zum gewisene Client.

Node-Kompatibilitéit kontrolléieren, éier Dir d’IP beschëllegt

Déi ënnerstëtzt Node-Versioune hänke vun der Undici-Pakversioun of. D’Beispill benotzt Undici 8.12.3, dat Node 22.19.0 oder méi nei verlaangt. E Feeler beim Modulluede oder bei der Engine-Versioun geschitt, éier d’Ufro e Proxy erreecht. Kontrolléiert d’Ufuerderunge vum installéierte Pak amplaz unzehuelen, datt all Node den neisten Undici ausféiert.

Een Agent ka widderholl Ufroe bedéngen

De kuerze Programm mécht säin Dispatcher um Enn zou. Wann eng lafend Applikatioun méi Ufroen iwwer dee selwechten Endpunkt schéckt, behalt den Agent fir déi Aarbechtslaascht a maacht en zou, wann d’Aarbecht fäerdeg ass. Fir all URL en Agent ze erstellen an zouzemaache verhënnert nëtzlech Wiederverwendung vu Verbindungen.

E globale Dispatcher passt nëmme wann Dir déi méi breet Ännerung wëllt. En explizitt matzeginn vereinfacht en Proxy-IP-Test ouni d’Ausgangsufroe vun enger anerer Komponent ze änneren.

Äntwert a Feelerphas ukucken

Fetch behandelt net all HTTP-Feelerstatus als refuséiert Promise. E 403 oder 429 kann eng richteg Websäitenäntwert sinn, déi iwwer de Proxy komm ass. E Verbindungs- oder Tunnelfeeler kann dogéint d’Ufro refuséieren, éier en Äntwertobjekt existéiert. Liest de Status getrennt vu Feeler, déi den Opruff werft.

Wann Authentifikatioun néideg ass, bitt dem Undici säi ProxyAgent Konstruktoroptiounen. Füügt kee Proxy-Autorisatiounsheader an d’Ufroheadere vun der Websäit; den Agent behandelt en anere Verbindungsschrëtt.

Ähnlech Artikelen