npm-ի proxy կարգավորումը չի երթուղավորում այն ամենը, ինչ մեկնարկում է npm start-ը
npm-ը կարգավորում է իր սեփական փաթեթային փոխանցումները։ Սկրիպտով մեկնարկված հավելվածը դեռ պետք է HTTP հաճախորդ, որն աջակցում է նախատեսված ելքային proxy-ին։
npm install աշխատում է proxy-ի միջով։ npm start մեկնարկում է հավելվածը, և նրա API հարցումն անցնում է ուղիղ։ npm-ը պարտադիր չէ, որ մոռացել է կարգավորումը։
Առաջին հարցումը կատարել է փաթեթների կառավարիչը։ Երկրորդը կատարում է ձեր հավելվածը։ npm-ի կոնֆիգուրացիայի proxy արժեքը տվյալ է այն ընթերցող սպառողների համար, ոչ թե յուրաքանչյուր զավակ պրոցեսի տակ դրված թունել։
Ուսումնասիրեք հավելվածի HTTP հաճախորդը և նրա աջակցած proxy ինտերֆեյսը։ Այն կարող է կարդալ ստանդարտ միջավայրի փոփոխականներ, պահանջել բացահայտ agent կամ dispatcher, կամ օգտագործել այլ փաստաթղթավորված կարգավորում։ Մի ենթադրեք, որ npm_config_proxy-ի նման փոփոխականը ճանաչվում է ավտոմատ կերպով։
Առանձնացրեք նաև ելքային proxy-ն զարգացման սերվերի API փոխանցման գործառույթից։ Այն կարգավորումը, որը զարգացման սերվերից բրաուզերի հարցումները փոխանցում է backend-ին, այլ դեր ունի. այն ինքնաբերաբար ցանցային ելք չէ ձեր հավելվածի յուրաքանչյուր հարցման համար։
Օգտակար համեմատության համար անվանեք հաջողվող հարցումը և այն պրոցեսը, որը կատարում է ձախողվող հարցումը։ Այնուհետև գիտակցաբար կարգավորեք վերջինս։ Undici-ի fetch-ը օգտագործող հավելվածը կարող է հետևել իր ProxyAgent dispatcher-ի կոնֆիգուրացիային, իր Node runtime-ին համատեղելի փաթեթի թողարկմամբ։ npm-ի registry վերջնակետը փոխելը կամ հավելվածը կրկին ու կրկին վերատեղադրելը ինքնին չի ապահովում այդ բացակայող ուղին։