Păstrați intacte acreditările proxy codificate într-un fișier batch
Păstrați numele de utilizator și parolele proxy codificate procentual atunci când mutați o comandă Windows într-un fișier .bat.
Un URL proxy funcționează când este configurat direct, dar autentificarea eșuează după ce aceeași valoare este mutată într-un fișier batch Windows. Verificați dacă parserul batch a modificat semnele de procent înainte ca clientul HTTP să primească URL-ul.
Există două reprezentări separate. Codificarea URL poate reprezenta o bară oblică inversă ca %5C și un semn de întrebare ca %3F. Un semn de procent literal într-o comandă de fișier batch trebuie escapat ca %%.
Pentru un cont ilustrativ domain\user cu parola substituent pass?, un fișier .bat poate conține:
set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"
Procesul lansat după aceea ar trebui să primească un URL care conține domain%5Cuser:pass%3F. Semnele de procent dublate aparțin sursei batch, nu URL-ului proxy stocat de client.
Nu copiați acea scriere batch într-un fișier .npmrc sau în câmpul proxy al unei aplicații: acele intrări nu trec prin același pas de analiză batch. De asemenea, acest exemplu nu este sintaxă PowerShell. Un alt înveliș, cum ar fi CALL sau o comandă construită pentru un al doilea shell, poate introduce o altă trecere de analiză și necesită propria verificare.
Puneți atribuirea SET între ghilimele, așa cum se arată, pentru ca spațiile accidentale sau metacaracterele shell-ului să nu facă parte dintr-o comandă nedorită. Ghilimelele singure nu împiedică expandarea procentului.
Când verificați rezultatul, comparați codificarea așteptată cu o reprezentare redactată în loc să tipăriți URL-ul cu parolă într-un jurnal partajat. O corectare a escapării shell păstrează acreditarea; nu selectează o schemă de autentificare pe care clientul nu o accepta deja.