Уключыць убудаваную падтрымку проксі ў Node пры запуску
Выкарыстоўвайце пераключальнік праксі асяроддзя Node з правільнымі парогамі версій fetch і http/https і разумейце яго кліенцкі ахоп.
Node можа сам чытаць зменныя асяроддзя проксі, калі яго ўбудаваная падтрымка ўключана пры запуску працэсу. Даступныя кліенты залежаць ад версіі асяроддзя выканання:
- Убудаваны fetch падтрымлівае NODE_USE_ENV_PROXY з Node 24.0.0, з пераносам на 22.21.0.
- Убудаваная падтрымка node:http і node:https праз іх стандартныя глабальныя агенты пачынаецца з 24.5.0, таксама перанесена на 22.21.0.
- Пераключальнік каманднага радка --use-env-proxy пачынаецца з 24.5.0 і 22.21.0.
На сумяшчальным выпуску гэты прыклад POSIX-shell задае адзін карпаратыўны HTTP-проксі для абедзвюх схем прызначэння:
export HTTP_PROXY=http://proxy.example.net:8080
export HTTPS_PROXY=http://proxy.example.net:8080
export NO_PROXY=localhost,127.0.0.1,.internal.example
node --use-env-proxy app.js
Імя HTTPS_PROXY выбірае маршрут для прызначэнняў HTTPS; URL можа па-ранейшаму называць HTTP-проксі. Наладзьце NO_PROXY для прызначэнняў, якія павінны яго абыходзіць. Для незалежнага тэсту публічнага URL без уліковага запісу проксі HTTP-запіс з спісу HTTP-проксі можа забяспечыць абодва значэнні проксі, а неабходныя ўнутраныя абыходы застануцца.
Форма пераключальніка асяроддзя — альтэрнатыва:
export NODE_USE_ENV_PROXY=1
node app.js
Задайце зменныя маршрутызацыі перад запускам Node у любой з формаў. Прысваенне сцяга opt-in да process.env пасля запуску не паўторна запускае ініцыялізацыю запуску.
Праверце, які HTTP-кліент фактычна выкарыстоўваецца
Стандартныя глабальныя агенты датычаць выклікаў http і https, якія іх выкарыстоўваюць. Бібліятэка з уласным карыстальніцкім агентам або дыспетчарам кіруе ўласным транспартам; сырыя TCP-сокеты знаходзяцца па-за гэтай функцыяй маршрутызацыі HTTP. Для сумяшчальнага кліента Undici яўны дыспетчар ProxyAgent — гэта асобны лакальны інтэрфейс кліента.
Калі праграма замяняе глабальны агент, агледзіце гэтую замену, перш чым меркаваць, што яна захоўвае паводзіны проксі пры запуску. Гэтак жа канфігурацыя рэестра npm — асобная налада інструмента, і яна не даказвае, як app.js маршрутызуе запыты.
Для карпаратыўнага патрабавання даверу TLS наладзьце адпаведны давераны CA для асяроддзя выканання. Уключэнне маршрутызацыі проксі не патрабуе адключэння праверкі сертыфікатаў.