Mae Undici yn llwybro cais drwy dispatcher. Crëwch ProxyAgent ar gyfer y dirprwy HTTP a ddewiswyd a’i roi i’r alwad fetch yn lle newid dispatcher byd-eang y broses gyfan.

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

Cadwch y rhaglen fel ffeil .mjs neu defnyddiwch brosiect modiwlau ES. Rhowch ddirprwy HTTP o’r rhestr dirprwyon HTTP yn lle IP y ddogfennaeth. Mae’r mewnforio’n defnyddio gweithrediad fetch Undici yn fwriadol, felly mae’r opsiwn dispatcher yn perthyn i’r cleient yn yr enghraifft.

Gwiriwch gydnawsedd Node cyn rhoi’r bai ar yr IP

Mae’r fersiynau Node a gefnogir gan Undici yn dibynnu ar ryddhad y pecyn. Mae’r enghraifft yn defnyddio Undici 8.12.3, sy’n mynnu Node 22.19.0 neu ddiweddarach. Mae gwall llwytho modiwl neu fersiwn peiriant yn digwydd cyn i’r cais gyrraedd dirprwy. Gwiriwch ofyniad y pecyn sydd wedi’i osod yn lle tybio bod pob Node yn rhedeg yr Undici diweddaraf.

Gall un agent wasanaethu ceisiadau ailadroddus

Mae’r rhaglen fer yn cau ei dispatcher ar y diwedd. Os yw rhaglen weithredol yn anfon sawl cais drwy’r un pwynt, cadwch yr agent ar gyfer y llwyth hwnnw a’i gau pan ddaw’r gwaith i ben. Mae creu a chau agent ar gyfer pob URL yn atal ailddefnyddio cysylltiadau’n ddefnyddiol.

Mae dispatcher byd-eang yn addas dim ond pan fwriadwch y newid ehangach. Mae ei drosglwyddo’n benodol yn ei gwneud yn haws profi IP dirprwy heb newid ceisiadau allanol cydran arall.

Edrychwch ar yr ymateb a’r cam methiant

Nid yw fetch yn trin pob statws gwall HTTP fel Promise a wrthodwyd. Gall 403 neu 429 fod yn ymateb gwirioneddol gan y wefan a gludwyd drwy’r dirprwy. Gall gwall cysylltiad neu dwnnel wrthod y cais cyn bod gwrthrych ymateb. Darllenwch y statws ar wahân i wallau a daflir gan yr alwad.

Os oes angen dilysu, mae ProxyAgent Undici yn cynnig opsiynau ar lefel yr adeiladydd. Peidiwch ag ychwanegu pennawd awdurdodi dirprwy at benawdau cais y wefan; mae’r agent yn trin cam cysylltiad gwahanol.

Erthyglau cysylltiedig