Node-ը կարող է ինքնուրույն կարդալ պրոքսի միջավայրի փոփոխականները, երբ նրա ներկառուցված աջակցությունը միացված է գործընթացի գործարկման պահին: Հասանելի հաճախորդները կախված են runtime-ի տարբերակից՝

  • Ներկառուցված 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-ն runtime-ի համար: Պրոքսի երթուղավորումը միացնելը չի պահանջում սերտիֆիկատի ստուգման անջատում:

Առնչվող հոդվածներ