Passer l'URL avant l'hôte dans un testeur PAC maison
Appelez FindProxyForURL d'abord avec l'URL complète, puis avec le nom d'hôte extrait, avant de faire confiance au routage de votre évaluateur maison.
Une page de test PAC faite maison comporte deux champs étiquetés Host et URL. Le bouton transmet leurs valeurs dans cet ordre. Malheureusement, la fonction PAC attend l'ordre inverse.
FindProxyForURL(url, host)
Pour une destination d'illustration, l'appel devrait ressembler à ceci :
FindProxyForURL("https://status.office.example/", "status.office.example")
Le second argument est un nom d'hôte, sans le schéma, le chemin ni le port. Une règle qui compare host à un nom connu ne correspondra pas lorsque le banc de test y fournit une URL complète.
Les deux entrées sont des chaînes, donc JavaScript n'a pas besoin de lever une erreur. Le script peut atteindre silencieusement son return final et afficher un proxy d'apparence plausible. C'est pourquoi ce défaut se confond particulièrement facilement avec une mauvaise règle de domaine.
Vérifiez l'appel avant la règle
Lisez l'invocation de la fonction dans le banc de test et inspectez les deux valeurs à cette frontière. Comparez ensuite une exception connue d'hôte exact avec un hôte sans rapport qui devrait utiliser la route par défaut. Ne commencez pas à élargir l'exception jusqu'à ce qu'elle corresponde à l'entrée malformée.
Un appel corrigé laisse encore l'environnement auxiliaire de l'évaluateur à examiner. Un myIpAddress() figé ou un auxiliaire DNS absent n'est pas l'état réseau réel du navigateur. Gardez ces points comme des questions distinctes. La réparation immédiate est le contrat de paramètres ; la réparation suivante, si nécessaire, consiste à faire représenter le consommateur prévu par l'environnement de test.