Activați suportul de proxy încorporat al Node la pornire
Utilizați comutatorul de proxy de mediu al Node cu pragurile corecte de versiune fetch și http/https și înțelegeți domeniul său de client.
Node poate citi singur variabilele de mediu pentru proxy atunci când suportul său încorporat este activat la pornirea procesului. Clienții disponibili depind de versiunea runtime-ului:
- fetch-ul încorporat acceptă NODE_USE_ENV_PROXY de la Node 24.0.0, cu un backport la 22.21.0.
- Suportul încorporat pentru node:http și node:https prin agenții lor globali impliciti începe la 24.5.0, de asemenea portat înapoi la 22.21.0.
- Comutatorul de linie de comandă --use-env-proxy începe la 24.5.0 și 22.21.0.
Pe o versiune compatibilă, acest exemplu POSIX-shell setează un proxy HTTP corporativ pentru ambele scheme de destinație:
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
Numele HTTPS_PROXY selectează ruta pentru destinațiile HTTPS; URL-ul poate numi în continuare un proxy HTTP. Ajustați NO_PROXY la destinațiile care ar trebui să îl ocolească. Pentru un test independent de URL public fără cont de proxy, o intrare HTTP din lista de proxy HTTP poate furniza ambele valori de proxy, în timp ce ocolirile interne necesare rămân.
Forma cu comutator de mediu este o alternativă:
export NODE_USE_ENV_PROXY=1
node app.js
Setați variabilele de rutare înainte de a lansa Node cu oricare dintre forme. Atribuirea indicatorului opt-in către process.env după pornire nu reexecută inițializarea de pornire.
Verificați ce client HTTP este folosit efectiv
Agenții globali impliciti sunt relevanți pentru apelurile http și https care îi folosesc. O bibliotecă cu propriul agent sau dispecer personalizat își controlează propriul transport; socketurile TCP brute sunt în afara acestei funcții de rutare HTTP. Pentru un client Undici compatibil, un dispecer ProxyAgent explicit este o interfață separată locală clientului.
Dacă o aplicație înlocuiește un agent global, inspectați acea înlocuire înainte de a presupune că păstrează comportamentul de proxy la pornire. În mod similar, configurația registrului npm este o setare separată a instrumentului și nu dovedește cum app.js rutează cererile.
Pentru o cerință corporativă de încredere TLS, configurați CA de încredere potrivită pentru runtime. Activarea rutării prin proxy nu necesită dezactivarea verificării certificatelor.