Gadewch i Undici ddarllen newidynnau dirprwy’r amgylchedd
Defnyddiwch EnvHttpProxyAgent yn fwriadol a gwahaniaethwch flaenoriaeth llythrennau bach, rheolau osgoi, URLau a gadwyd a no_proxy deinamig.
Defnyddiwch EnvHttpProxyAgent pan ddylai amgylchedd y broses ddewis y llwybr. Defnyddiwch Undici ProxyAgent penodol pan ddylai’r pen pwynt fod yn rhan o ffurfweddiad y cleient. Rhowch ef i’r cais go iawn; nid yw creu’r asiant yn unig yn newid unrhyw alwad fetch.
import { EnvHttpProxyAgent, fetch } from 'undici';
const dispatcher = new EnvHttpProxyAgent();
try {
const response = await fetch("https://example.com/", {
dispatcher,
signal: AbortSignal.timeout(15000),
});
console.log(response.status);
await response.arrayBuffer();
} finally {
await dispatcher.close();
}Cadwch hyn fel proxy-check.mjs mewn amgylchedd modiwlau ES lle mae Undici ar gael. Mae’r lansiad POSIX hwn yn rhoi’r ddau lwybr dirprwy a rhestr osgoi wag:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsRhowch eich dirprwy HTTP neu ymgeisydd o’r rhestr ddirprwyon HTTP yn lle pen pwynt y ddogfennaeth. Mae’r aseiniadau’n perthyn i’r alwad hon; mae gan gregyn eraill gystrawen wahanol.
Yn Undici 8.12.3, mae llythrennau bach http_proxy, https_proxy a no_proxy yn cael blaenoriaeth dros eu cyfatebion mawr pan fo’r ddau yn bodoli. Mae cyrchfannau HTTP a HTTPS yn dewis eu gosodiadau eu hunain. Mae gosodiad HTTP yn unig hefyd yn darparu dewis wrth gefn HTTPS; nid yw HTTPS yn unig yn darparu HTTP. Peidiwch â chymryd bod confensiwn ALL_PROXY cleient arall yn berthnasol.
| Mewnbwn | Pryd mae’r fersiwn hon yn ei ddefnyddio |
|---|---|
| Amgylchedd dirprwy HTTP/HTTPS | Fe’i dewisir wrth adeiladu’r asiant. Crëwch dispatcher newydd ar ôl newid y pen pwyntiau hyn. |
no_proxy yr amgylchedd | Fe’i gwirir eto wrth anfon ceisiadau. |
noProxy y lluniwr | Yn gosod y polisi osgoi’n benodol yn lle dilyn newidiadau amgylchedd diweddarach. |
Gall rheolau osgoi gyfateb i westeiwyr a phorthladdoedd dewisol; mae seren unigol yn osgoi’r dirprwy ar gyfer pob cais. Gwiriwch gyfatebiaeth y gyrchfan os nad yw’r dirprwy yn gweld traffig.
Ar Windows, nid yw’r brif broses yn gwahaniaethu maint llythrennau enwau’r amgylchedd, felly nid yw HTTP_PROXY a http_proxy yn werthoedd annibynnol. Mae gan gopïau amgylchedd Node Worker wahaniaeth maint llythrennau wedi’i ddogfennu. Cymerwch hynny i ystyriaeth cyn gosod y ddau sillafiad i brofi blaenoriaeth. Mae’r enghraifft yn cau’r dispatcher ar ôl y gwaith; cadwch ef tra bo ceisiadau ailadroddus angen yr un polisi pen pwynt a gadwyd.