사용자 제작 PAC 테스터에서 호스트보다 URL을 먼저 전달하기
직접 만든 평가기의 라우팅 결과를 신뢰하기 전에 FindProxyForURL을 먼저 전체 URL로, 다음으로 추출한 호스트 이름으로 호출하세요.
직접 만든 PAC 테스트 페이지에는 Host와 URL이라는 두 입력란이 있습니다. 버튼은 그 값들을 바로 그 순서로 전달합니다. 안타깝게도 PAC 함수는 반대 순서를 기대합니다.
FindProxyForURL(url, host)
예시 대상 하나의 경우 호출은 이렇게 보여야 합니다.
FindProxyForURL("https://status.office.example/", "status.office.example")
두 번째 인수는 스킴, 경로, 포트가 없는 호스트 이름입니다. host를 알려진 이름과 비교하는 규칙은 테스트 하네스가 그 자리에 완전한 URL을 넘기면 일치하지 않습니다.
두 입력 모두 문자열이므로 JavaScript가 오류를 던질 필요는 없습니다. 스크립트는 조용히 마지막 return에 도달해 그럴듯해 보이는 프록시를 표시할 수 있습니다. 그래서 이 버그는 잘못된 도메인 규칙으로 오해하기가 특히 쉽습니다.
규칙보다 먼저 호출을 확인하세요
테스트 하네스의 함수 호출을 읽고 그 경계에서 두 값을 살펴보세요. 그다음 알려진 정확한 호스트 예외를 기본 경로를 써야 하는 무관한 호스트와 비교하세요. 예외가 잘못된 입력에 맞을 때까지 예외를 넓히기 시작하지 마세요.
호출을 고쳐도 평가기의 보조 환경은 여전히 고려할 대상입니다. 고정된 myIpAddress()나 빠진 DNS 도우미는 브라우저의 실제 네트워크 상태가 아닙니다. 그것들은 별개의 질문으로 두세요. 당장의 수리는 매개변수 계약이고, 다음 수리는 필요하다면 테스트 환경이 의도한 소비자를 대표하게 만드는 것입니다.