Als HTTP::ProxyPAC mislukt tijdens de constructie, heeft het mogelijk nog geen enkel bestemmingsverzoek bereikt. De automatische interpreterkeuze probeert eerst de module JavaScript en daarna JE; de constructie mislukt als geen van beide beschikbaar is in die Perl-runtime.

Omdat JE al beschikbaar is, kiest u die expliciet en evalueert u de bestemming:

use HTTP::ProxyPAC;

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

Een lokaal PAC-bestand scheidt de interpreterevaluatie van het ophalen van de PAC zelf. De constructor kan ook een PAC-URL, een verwijzing naar een scriptstring of een open handle accepteren.

Kies de resultaatcontext bewust. find_proxy in scalaire context geeft het eerste resultaat; de getoonde lijstcontext bewaart meerdere kandidaten. Geef de proxywaarde van elk Result-object door aan de configuratie van de daadwerkelijke HTTP-client, en behandel een direct resultaat expliciet.

De evaluator kiest routes; de HTTP-client moet nog steeds verbinden en het vereiste terugvalbeleid implementeren. Alle kandidaten bewaren is alleen van belang als die client ze in de bedoelde volgorde probeert.

Gerelateerde artikelen