Node може сам да ги чита променливите на околината за прокси кога неговата вградена поддршка е овозможена при стартување на процесот. Достапните клиенти зависат од верзијата на runtime:

  • Вградениот fetch поддржува NODE_USE_ENV_PROXY од Node 24.0.0, со backport на 22.21.0.
  • Вградената поддршка за node:http и node:https преку нивните стандардни глобални агенти започнува од 24.5.0, исто така backport на 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 за runtime. Овозможувањето на прокси рутирање не бара оневозможување на проверката на сертификати.

Поврзани статии