La tavoloj malantaŭ proksea Mechanize HTTPS-peto
Vidu kiel Mechanize, la HTTPS-protokola modulo de LWP kaj la SSL-motoro kunlaboras por enkursigi, tuneli kaj kontroli unu HTTPS-peton.
Agordu la itineron sur la objekto Mechanize antaŭ ol preni:
use WWW::Mechanize;
my $mech = WWW::Mechanize->new(timeout => 30);
$mech->proxy(
['http', 'https'],
'http://proxy.example.net:8080',
);Uzu la celatan HTTP-aŭskultanton en la ekzemplo; por permesitaj petoj al publikaj celoj, kandidatoj troviĝas en la listo de HTTP-proksejoj. La tabelo nomas la celajn skemojn. La finpunkto http:// provizas ordinaran CONNECT-itineron por HTTPS: HTTP al la proksejo, tunelo al la celo, poste la TLS de la celo. Se la disfaldiĝo anstataŭe uzas mediparametrojn, $mech->env_proxy estas la alternativo; importi ilin poste povas ŝanĝi itineron asignitan en la kodo.
Mechanize heredas la retadon de LWP::UserAgent anstataŭ provizi apartan HTTPS-proksean motoron:
- Mechanize provizas ligilojn, formularojn kaj la konduton de la nuna paĝo.
- LWP::UserAgent kaj ĝia HTTP-transporto elektas la itineron kaj aranĝas CONNECT.
- LWP::Protocol::https provizas HTTPS-traktadon kaj plibonigas la konekton.
- Net::HTTPS kun sia SSL-motoro provizas TLS-kapablan ingon, kutime IO::Socket::SSL en modernaj agordoj.
Instalita SSL-motoro mem ne elektas proksejon. Konservu la originan HTTPS-gastigan nomon en la URL: akcepto de CONNECT ne kontrolas la atestilon de tiu retejo.
Kiam vi prizorgas malnovajn komponantojn, distingigu ĉi tiujn limojn. libwww-perl 6.06 kaj la aparte distribuita LWP::Protocol::https 6.06 enkondukis kunordigitajn riparojn por normala HTTP CONNECT. Nur la versio de UserAgent ne identigas la HTTPS-modulon. LWP::Protocol::https 6.15 aldonis riparon por TLS-ebligitaj prokseaj finpunktoj, kies skemo https:// aldonas TLS al la proksejo antaŭ la TLS de la celo.
Pli malnovaj agordoj de Net::SSL/Crypt::SSLeay povas anstataŭe uzi la dokumentitan medimekanismon HTTPS_PROXY de tiu motoro. Ne apliku ĝian recepton al la moderna IO::Socket::SSL-vojo, kie LWP posedas la enkursigon.
Uzu la unuan malsukcesan stadion por elekti la komponanton: mankanta HTTPS-traktilo koncernas la protokolmodulon; rifuzita CONNECT koncernas itineron, akreditaĵojn aŭ politikon; atestila eraro post la tunelo koncernas la identecon kaj fidon de la celo. Konservu la kontroladon dum vi ŝanĝas la komponanton subtenatan de tiu pruvo.