Leiskite Undici skaityti tarpinio serverio aplinkos kintamuosius
Sąmoningai naudokite EnvHttpProxyAgent ir atskirkite mažųjų raidžių pirmenybę, apėjimus, išsaugotus URL bei dinaminį no_proxy.
Naudokite EnvHttpProxyAgent, kai kelią turi pasirinkti proceso aplinka. Naudokite aiškiai nustatytą Undici ProxyAgent, kai galinis taškas turi priklausyti kliento konfigūracijai. Perduokite jį tikrajai užklausai; vien agento sukūrimas nepakeičia jokio fetch iškvietimo.
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();
}Išsaugokite tai kaip proxy-check.mjs ES modulių aplinkoje, kurioje pasiekiamas Undici. Šis POSIX paleidimas pateikia du tarpinio serverio kelius ir tuščią apėjimo sąrašą:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsDokumentacijos tašką pakeiskite savo HTTP tarpiniu serveriu arba kandidatu iš HTTP tarpinių serverių sąrašo. Priskyrimai skirti šiam paleidimui; kitų apvalkalų sintaksė skiriasi.
Undici 8.12.3 mažųjų raidžių http_proxy, https_proxy ir no_proxy turi pirmenybę prieš didžiųjų raidžių atitikmenis, kai egzistuoja abu. HTTP ir HTTPS paskirtys pasirenka savo nuostatas. Tik HTTP nuostata taip pat pateikia atsarginį variantą HTTPS; tik HTTPS nesuteikia HTTP. Nemanykite, kad galioja kito kliento ALL_PROXY susitarimas.
| Įvestis | Kada ši laida ją naudoja |
|---|---|
| HTTP/HTTPS tarpinio serverio aplinka | Pasirenkama kuriant agentą. Pakeitę šiuos galinius taškus sukurkite naują dispatcher. |
Aplinkos no_proxy | Tikrinama iš naujo siunčiant užklausas. |
Konstruktoriaus noProxy | Aiškiai užfiksuoja apėjimo politiką, užuot sekusi vėlesnius aplinkos pakeitimus. |
Apėjimai gali atitikti kompiuterius ir neprivalomus prievadus; viena žvaigždutė apeina tarpinį serverį visoms užklausoms. Jei tarpinis serveris nemato srauto, tikrinkite paskirties atitiktį.
Windows pagrindinis procesas neskiria aplinkos vardų raidžių dydžio, todėl HTTP_PROXY ir http_proxy nėra nepriklausomos reikšmės. Node Worker aplinkos kopijose yra dokumentuotas raidžių dydžio skirtumas. Atsižvelkite į tai prieš nustatydami abu užrašus pirmenybei patikrinti. Pavyzdys uždaro dispatcher po darbo; išlaikykite jį, kol kartotinėms užklausoms reikia tos pačios išsaugotos galinių taškų politikos.