Выберите интерпретатор HTTP::ProxyPAC до оценки URL
Выберите доступный интерпретатор JavaScript и сохраняйте несколько результатов PAC, когда клиенту Perl нужны резервные маршруты.
Если HTTP::ProxyPAC завершается с ошибкой при создании, он мог не дойти ни до одного запроса к пункту назначения. Автоматический выбор интерпретатора сначала пробует модуль JavaScript, затем JE; создание не удаётся, если ни один из них не доступен в этой среде Perl.
Поскольку JE уже доступен, выберите его явно и оцените пункт назначения:
use HTTP::ProxyPAC;
my $pac = HTTP::ProxyPAC->new('/path/to/network.pac', interp => 'je');
my @routes = $pac->find_proxy('http://service.example/status');Локальный файл PAC отделяет оценку интерпретатора от загрузки самого PAC. Конструктор также может принимать URL PAC, ссылку на строку скрипта или открытый дескриптор.
Осознанно выбирайте контекст результата. Скалярный find_proxy возвращает первый результат; показанный списочный контекст сохраняет несколько кандидатов. Передайте значение прокси каждого объекта Result в конфигурацию реального HTTP-клиента и явно обрабатывайте прямой результат.
Оценщик выбирает маршруты; HTTP-клиент всё равно должен подключиться и реализовать требуемую политику переключения. Сохранять всех кандидатов важно только тогда, когда этот клиент будет пробовать их в заданном порядке.