Wenn HTTP::ProxyPAC während der Konstruktion fehlschlägt, hat es möglicherweise noch keine Zielanfrage erreicht. Seine automatische Interpreterauswahl versucht zuerst das Modul JavaScript, dann JE; die Konstruktion schlägt fehl, wenn keines von beiden in dieser Perl-Laufzeit verfügbar ist.

Da JE bereits verfügbar ist, wählen Sie es ausdrücklich und werten Sie das Ziel aus:

use HTTP::ProxyPAC;

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

Eine lokale PAC-Datei trennt die Interpreterauswertung vom Abruf der PAC selbst. Der Konstruktor kann auch eine PAC-URL, eine Skript-String-Referenz oder ein offenes Handle annehmen.

Wählen Sie den Ergebniskontext bewusst. find_proxy im Skalarkontext liefert das erste Ergebnis; der gezeigte Listenkontext bewahrt mehrere Kandidaten. Übergeben Sie den Proxy-Wert jedes Result-Objekts an die Konfiguration des tatsächlichen HTTP-Clients und behandeln Sie ein direktes Ergebnis ausdrücklich.

Der Auswerter wählt Routen; der HTTP-Client muss sich trotzdem verbinden und die erforderliche Fallback-Richtlinie umsetzen. Alle Kandidaten zu behalten ist nur dann wichtig, wenn dieser Client sie in der vorgesehenen Reihenfolge versuchen wird.

Ähnliche Artikel