Trimiterea URL-ului înaintea hostului într-un tester PAC propriu
Apelați FindProxyForURL mai întâi cu URL-ul complet, apoi cu numele de host extras, înainte de a avea încredere în rezultatul de rutare al evaluatorului propriu.
O pagină de test PAC făcută acasă are două casete etichetate Host și URL. Butonul le transmite valorile în această ordine. Din păcate, funcția PAC așteaptă ordinea inversă.
FindProxyForURL(url, host)
Pentru o destinație ilustrativă, apelul ar trebui să arate astfel:
FindProxyForURL("https://status.office.example/", "status.office.example")
Al doilea argument este un nume de host, fără schemă, cale sau port. O regulă care compară host cu un nume cunoscut nu se va potrivi când mediul de test furnizează acolo un URL complet.
Ambele intrări sunt șiruri, așa că JavaScript nu trebuie să arunce o eroare. Scriptul poate ajunge în liniște la return-ul final și poate afișa un proxy care pare plauzibil. De aceea această eroare este deosebit de ușor de confundat cu o regulă de domeniu proastă.
Verificați apelul înaintea regulii
Citiți invocarea funcției din mediul de test și inspectați cele două valori la acea graniță. Apoi comparați o excepție cunoscută pentru host exact cu un host nelegat care ar trebui să folosească ruta implicită. Nu începeți să lărgiți excepția până când nu se potrivește cu intrarea malformată.
Un apel corectat lasă totuși mediul auxiliar al evaluatorului de analizat. Un myIpAddress() fix sau un auxiliar DNS lipsă nu este starea reală de rețea a browserului. Păstrați-le ca întrebări separate. Reparația imediată este contractul de parametri; următoarea reparație, dacă este necesar, este ca mediul de test să reprezinte consumatorul intenționat.