Undici suunab päringu dispatcheri kaudu. Loo valitud HTTP-puhverserverile ProxyAgent ja anna see fetch-kutsele kogu protsessi globaalse dispatcheri muutmise asemel.

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

Salvesta programm .mjs failina või kasuta ES-moodulite projekti. Asenda dokumentatsiooni IP HTTP-puhverserveriga HTTP-puhverserverite loendist. Import kasutab teadlikult Undici fetch-teostust, seega dispatcher-valik kuulub näites olevale kliendile.

Kontrolli Node’i ühilduvust enne IP süüdistamist

Undici toetatud Node’i versioonid sõltuvad paketiväljaandest. Näide kasutab Undici 8.12.3, mis nõuab Node 22.19.0 või uuemat. Mooduli laadimise või mootoriversiooni viga tekib enne päringu jõudmist puhverserverini. Kontrolli paigaldatud paketi nõudeid, ära eelda, et iga Node käitab uusimat Undicit.

Üks agent võib teenindada korduvaid päringuid

Lühike programm sulgeb dispatcheri lõpus. Kui töötav rakendus saadab mitu päringut sama lõpp-punkti kaudu, säilita agent selle töökoormuse jaoks ja sulge töö lõppedes. Iga URL-i jaoks agendi loomine ning sulgemine takistab kasulikku ühenduste taaskasutust.

Globaalne dispatcher sobib ainult kavandatud laiema muudatuse korral. Selgesõnaline andmine hõlbustab puhverserveri IP katsetamist teise komponendi väljuvaid päringuid muutmata.

Vaata vastust ja tõrke etappi

Fetch ei käsitle iga HTTP veakoodi tagasilükatud Promise’ina. 403 või 429 võib olla puhverserveri kaudu tulnud tegelik veebisaidi vastus. Ühenduse või tunneli viga võib hoopis päringu tagasi lükata enne vastusobjekti olemasolu. Loe olekut eraldi kutse visatud vigadest.

Kui autentimine on nõutav, pakub Undici ProxyAgent konstruktori tasemel valikuid. Ära lisa puhverserveri autoriseerimispäist veebisaidi päringupäistesse; agent tegeleb teise ühenduslõiguga.

Seotud artiklid