સ્ટાર્ટઅપ પર Node નું બિલ્ટ-ઇન પ્રોક્સી સમર્થન સક્ષમ કરો
યોગ્ય fetch અને http/https આવૃત્તિ થ્રેશોલ્ડ સાથે Node ના એન્વાયર્નમેન્ટ પ્રોક્સી સ્વિચનો ઉપયોગ કરો અને તેની ક્લાયન્ટ શ્રેણી સમજો.
પ્રક્રિયા શરૂ થતી વખતે તેનું બિલ્ટ-ઇન સમર્થન સક્ષમ હોય ત્યારે Node પ્રોક્સી એન્વાયર્નમેન્ટ ચલો જાતે વાંચી શકે છે. ઉપલબ્ધ ક્લાયન્ટ્સ રનટાઇમ આવૃત્તિ પર આધાર રાખે છે:
- બિલ્ટ-ઇન fetch Node 24.0.0 થી NODE_USE_ENV_PROXY ને સમર્થન આપે છે, 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 ગોઠવો. પ્રોક્સી રૂટિંગ સક્ષમ કરવા માટે પ્રમાણપત્ર ચકાસણી અક્ષમ કરવાની જરૂર નથી.