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-ді жабады; қайталанатын сұрауларға сол сақталған нүкте саясаты қажет кезде оны сақтаңыз.