URL proxy deluje, ko je konfiguriran neposredno, vendar preverjanje pristnosti ne uspe, potem ko se ista vrednost premakne v paketno datoteko Windows. Preverite, ali je razčlenjevalnik paketne datoteke spremenil odstotne znake, preden je odjemalec HTTP prejel URL.

Obstajata dve ločeni predstavitvi. Kodiranje URL lahko predstavi povratno poševnico kot %5C in vprašaj kot %3F. Dobesedni odstotni znak v ukazu paketne datoteke je treba escapati kot %%.

Za ilustrativni račun domain\user z nadomestnim geslom pass? lahko datoteka .bat vsebuje:

set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"

Postopek, ki se zažene pozneje, bi moral prejeti URL, ki vsebuje domain%5Cuser:pass%3F. Podvojeni odstotni znaki pripadajo viru paketne datoteke, ne URL-ju proxy, ki ga shranjuje odjemalec.

Tega paketnega zapisa ne kopirajte v datoteko .npmrc ali v polje proxy aplikacije: ti vnosi ne gredo skozi isti korak razčlenjevanja paketne datoteke. Prav tako ta primer ni sintaksa PowerShell. Drugo ovoje, na primer CALL ali ukaz, zgrajen za drugo lupino, lahko vnese še en prehod razčlenjevanja in potrebuje svoj pregled.

Dodelitev SET postavite v narekovaje, kot je prikazano, da naključni presledki ali metaznaki lupine ne postanejo del neželenega ukaza. Sami narekovaji ne preprečijo razširitve odstotka.

Pri preverjanju rezultata primerjajte pričakovano kodiranje z redigirano predstavitvijo, namesto da bi URL z geslom natisnili v skupni dnevnik. Popravek escapiranja lupine ohrani poverilnice; ne izbere sheme preverjanja pristnosti, ki je odjemalec že ni podpiral.

Sorodni članki