Mantingueu intactes les credencials de proxy codificades en un fitxer batch
Preserveu els noms d'usuari i les contrasenyes de proxy codificats amb percentatges en traslladar una ordre de Windows a un fitxer .bat.
Una URL de proxy funciona quan es configura directament, però l'autenticació falla després que el mateix valor es traslladi a un fitxer batch de Windows. Comproveu si l'analitzador batch ha canviat els signes de percentatge abans que el client HTTP rebés la URL.
Hi ha dues representacions separades. La codificació URL pot representar una barra invertida com a %5C i un signe d'interrogació com a %3F. Un signe de percentatge literal en una ordre de fitxer batch s'ha d'escapar com a %%.
Per a un compte il·lustratiu domain\user amb la contrasenya d'exemple pass?, un fitxer .bat pot contenir:
set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"
El procés iniciat després hauria de rebre una URL que contingui domain%5Cuser:pass%3F. Els signes de percentatge doblats pertanyen al codi font batch, no a la URL de proxy desada pel client.
No copieu aquesta escriptura batch en un fitxer .npmrc ni en el camp de proxy d'una aplicació: aquestes entrades no passen pel mateix pas d'anàlisi batch. De la mateixa manera, aquest exemple no és sintaxi de PowerShell. Un altre embolcall, com CALL o una ordre construïda per a un segon shell, pot introduir una altra passada d'anàlisi i necessita la seva pròpia revisió.
Poseu l'assignació SET entre cometes tal com es mostra, perquè els espais accidentals o els metacaràcters del shell no es converteixin en part d'una ordre no desitjada. Les cometes soles no impedeixen l'expansió del percentatge.
En comprovar el resultat, compareu la codificació esperada amb una representació redactada en lloc d'imprimir la URL amb contrasenya en un registre compartit. Una reparació d'escapament del shell preserva la credencial; no selecciona un esquema d'autenticació que el client ja no admetés.