Se HTTP::ProxyPAC falhar durante a construção, talvez não tenha chegado a nenhum pedido de destino. A sua seleção automática de intérprete tenta primeiro o módulo JavaScript e depois JE; a construção falha se nenhum dos dois estiver disponível nesse ambiente Perl.

Como o JE já está disponível, selecione-o explicitamente e avalie o destino:

use HTTP::ProxyPAC;

my $pac = HTTP::ProxyPAC->new('/path/to/network.pac', interp => 'je');
my @routes = $pac->find_proxy('http://service.example/status');

Um ficheiro PAC local separa a avaliação do intérprete da obtenção do próprio PAC. O construtor também pode aceitar um URL de PAC, uma referência a uma cadeia de script ou um handle aberto.

Escolha o contexto do resultado deliberadamente. find_proxy em contexto escalar devolve o primeiro resultado; o contexto de lista mostrado conserva vários candidatos. Passe o valor de proxy de cada objeto Result para a configuração do cliente HTTP real e trate explicitamente um resultado direto.

O avaliador escolhe as rotas; o cliente HTTP ainda tem de ligar e implementar a política de fallback necessária. Conservar todos os candidatos só importa se esse cliente os experimentar na ordem prevista.

Artigos relacionados