La Undici lese proxyvariablar frå miljøet
Bruk EnvHttpProxyAgent medvite, og skil mellom prioritet for små bokstavar, omgåingsreglar, lagra proxy-URL-ar og dynamisk no_proxy.
Bruk EnvHttpProxyAgent når prosessmiljøet skal velje ruta. Bruk ein eksplisitt Undici ProxyAgent når endepunktet skal høyre til klientkonfigurasjonen. Send han til den faktiske førespurnaden; berre å lage agenten endrar ingen fetch-kall:
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();
}Lagre dette som proxy-check.mjs i eit ES-moduloppsett der Undici er tilgjengeleg. Denne POSIX-starten gir dei to proxyrutene og ei tom omgåingsliste:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsByt dokumentasjonsendepunktet med din HTTP-proxy eller ein kandidat frå HTTP-proxylista. Tilordningane gjeld dette kallet; andre skal bruker annan syntaks.
I Undici 8.12.3 har små bokstavar i http_proxy, https_proxy og no_proxy prioritet over tilsvarande store når begge finst. HTTP- og HTTPS-mål vel kvar sine innstillingar. Ei innstilling berre for HTTP gir òg HTTPS-fallback; berre HTTPS gir ikkje HTTP. Ikkje gå ut frå at ein annan klients ALL_PROXY-konvensjon gjeld.
| Inndata | Når denne utgåva bruker dei |
|---|---|
| HTTP/HTTPS-proxymiljø | Vert valt når agenten vert oppretta. Lag ein ny dispatcher etter endring av desse endepunkta. |
no_proxy frå miljøet | Vert kontrollert på nytt når førespurnader vert sende. |
noProxy i konstruktøren | Fastset omgåingspolicyen eksplisitt i staden for å følgje seinare miljøendringar. |
Omgåingar kan treffe vertar og valfrie portar; éi stjerne går utanom proxyen for alle førespurnader. Sjekk målmatchen dersom proxyen ikkje ser trafikk.
På Windows skil hovudprosessen ikkje mellom store og små bokstavar i miljønamn, så HTTP_PROXY og http_proxy er ikkje uavhengige verdiar. Miljøkopiar i Node Worker har eit dokumentert skilje etter bokstavstorleik. Ta omsyn til dette før du set begge skrivemåtane for å teste prioriteten. Dømet lukkar dispatcheren etter arbeidet; hald på han medan gjentekne førespurnader treng den same lagra endepunktpolicyen.