Postavite rutu na Mechanize objektu prije preuzimanja:

use WWW::Mechanize;

my $mech = WWW::Mechanize->new(timeout => 30);
$mech->proxy(
    ['http', 'https'],
    'http://proxy.example.net:8080',
);

Koristite namjeravani HTTP listener u primjeru; za dopuštene zahtjeve prema javnim ciljevima kandidati su u listi HTTP proxyja. Niz imenuje odredišne sheme. Krajnja točka http:// pruža običnu CONNECT rutu za HTTPS: HTTP prema proxyju, tunel do cilja, zatim TLS cilja. Ako implementacija umjesto toga koristi postavke okruženja, $mech->env_proxy je alternativa; njihov kasniji uvoz može promijeniti rutu dodijeljenu u kodu.

Mechanize nasljeđuje mrežne mogućnosti LWP::UserAgent umjesto da pruža zasebni motor za HTTPS proxy:

  • Mechanize pruža linkove, forme i ponašanje trenutne stranice.
  • LWP::UserAgent i njegov HTTP transport biraju rutu i organiziraju CONNECT.
  • LWP::Protocol::https pruža obradu HTTPS-a i nadograđuje vezu.
  • Net::HTTPS sa svojom SSL pozadinom pruža socket sposoban za TLS, obično IO::Socket::SSL u modernim konfiguracijama.

Instalirana SSL pozadina sama po sebi ne bira proxy. Zadržite izvorno HTTPS ime hosta u URL-u: prihvatanje CONNECT-a ne provjerava certifikat tog sajta.

Kada održavate stare komponente, razlikujte ove granice. libwww-perl 6.06 i odvojeno distribuirani LWP::Protocol::https 6.06 uveli su usklađene ispravke za normalni HTTP CONNECT. Sama verzija UserAgenta ne identificira HTTPS modul. LWP::Protocol::https 6.15 dodao je ispravku za proxy krajnje točke s omogućenim TLS-om, čija shema https:// dodaje TLS proxyju prije TLS-a cilja.

Starije konfiguracije Net::SSL/Crypt::SSLeay mogu umjesto toga koristiti dokumentirani mehanizam okruženja HTTPS_PROXY te pozadine. Ne primjenjujte njegov recept na modernu putanju IO::Socket::SSL, gdje LWP upravlja usmjeravanjem.

Koristite prvu neuspjelu fazu da odaberete komponentu: nedostajući HTTPS obrađivač tiče se protokolnog modula; odbijeni CONNECT tiče se rute, akreditiva ili politike; greška certifikata nakon tunela tiče se identiteta odredišta i povjerenja. Zadržite provjeru dok mijenjate komponentu koju ti dokazi podržavaju.

Povezani članci