Undici прокси чөйрө өзгөрмөлөрүн окусун
EnvHttpProxyAgentти максаттуу колдонуп, кичине тамга артыкчылыгын, айланып өтүүнү, сакталган прокси URLдерин жана динамикалык no_proxyни ажыратыңыз.
Жолду процесс чөйрөсү тандашы керек болсо EnvHttpProxyAgent колдонуңуз. Чекит кардардын жөндөөсүнө таандык болсо ачык Undici ProxyAgent колдонуңуз. Аны чыныгы суроого бериңиз; агентти түзүү эле эч бир 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();
}Муну Undici бар ES-модуль чөйрөсүндө proxy-check.mjs катары сактаңыз. Бул POSIX баштоосу эки прокси жолун жана бош айланып өтүү тизмесин берет:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsДокументтеги чекитти HTTP проксиңизге же HTTP прокси тизмесинен талапкерге алмаштырыңыз. Маани ыйгаруулар ушул чакырууга тиешелүү; башка кабыктардын синтаксиси башка.
Undici 8.12.3тө кичине тамгалуу http_proxy, https_proxy жана no_proxy эки түрү тең болсо чоң тамгалуу дал келүүлөрүнөн артык. HTTP жана HTTPS максаттары өз жөндөөлөрүн тандайт. HTTP гана жөндөөсү HTTPSке да резерв берет; HTTPS гана HTTP бербейт. Башка кардардын ALL_PROXY келишими колдонулат деп ойлобоңуз.
| Киргизүү | Бул нуска качан колдонот |
|---|---|
| HTTP/HTTPS прокси чөйрөсү | Агент түзүлгөндө тандалат. Бул чекиттер өзгөрсө жаңы dispatcher түзүңүз. |
Чөйрөдөгү no_proxy | Суроолор жөнөтүлгөндө кайра текшерилет. |
Конструктордогу noProxy | Кийинки чөйрө өзгөрүүлөрүн ээрчибей, айланып өтүү саясатын ачык бекитет. |
Айланып өтүү хостторго жана милдеттүү эмес портторго дал келиши мүмкүн; жалгыз жылдыз бардык суроодо проксини айланып өтөт. Прокси трафик көрбөсө, максаттын дал келүүсүн текшериңиз.
Windowsто негизги процесс чөйрө аттарында чоң-кичине тамганы айырмалабайт, ошондуктан HTTP_PROXY менен http_proxy көз карандысыз маани эмес. Node Worker чөйрө көчүрмөлөрүндө документтештирилген тамга айырмасы бар. Артыкчылыкты сынап эки жазылышты коюудан мурда ушуну эске алыңыз. Мисал иштен кийин dispatcherди жабат; кайталанган суроолорго ошол сакталган чекит саясаты керек болгончо аны кармаңыз.