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 для середовища виконання. Увімкнення маршрутизації проксі не вимагає вимкнення перевірки сертифікатів.

Схожі статті