ලබා ගැනීමට පෙර Mechanize වස්තුවේ මාර්ගය සකසන්න:

use WWW::Mechanize;

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

උදාහරණයේ අදහස් කළ HTTP ශ්‍රව්‍යය භාවිත කරන්න; අවසර ලත් පොදු ඉලක්ක සඳහා ඉල්ලීම්වල අපේක්ෂකයින් HTTP ප්‍රොක්සි ලැයිස්තුවේ ඇත. අරේ ගමනාන්ත ක්‍රම නම් කරයි. http:// අන්ත ලක්ෂ්‍යය HTTPS සඳහා සාමාන්‍ය CONNECT මාර්ගය සපයයි: ප්‍රොක්සියට HTTP, ඉලක්කයට උමග, පසුව ඉලක්කයේ TLS. යෙදවීම ඒ වෙනුවට පරිසර සැකසුම් භාවිත කරන්නේ නම්, $mech->env_proxy විකල්පයයි; පසුව ඒවා ආයාත කිරීම කේතයේ පවරා ඇති මාර්ගය වෙනස් කළ හැකිය.

Mechanize වෙනම HTTPS ප්‍රොක්සි එන්ජිමක් සැපයීම වෙනුවට LWP::UserAgent ජාලකරණය උරුම කර ගනී:

  • Mechanize සබැඳි, පෝරම සහ වත්මන් පිටුවේ හැසිරීම සපයයි.
  • LWP::UserAgent සහ එහි HTTP ප්‍රවාහනය මාර්ගය තෝරා CONNECT සකසයි.
  • LWP::Protocol::https HTTPS හැසිරවීම සපයන අතර සම්බන්ධතාවය උත්ශ්‍රේණි කරයි.
  • Net::HTTPS එහි SSL බැක්එන්ඩ් සමඟ TLS හැකියාව ඇති සොකට් සපයයි, නවීන වින්‍යාසවල සාමාන්‍යයෙන් IO::Socket::SSL.

ස්ථාපිත SSL බැක්එන්ඩ් තමාම ප්‍රොක්සියක් තෝරා නොගනී. මුල් HTTPS සත්කාරක නාමය URL තුළ තබා ගන්න: CONNECT පිළිගැනීම එම අඩවියේ සහතිකය සත්‍යාපනය නොකරයි.

පැරණි සංරචක නඩත්තු කරන විට මෙම සීමා වෙන් කරන්න. libwww-perl 6.06 සහ වෙන වෙනම බෙදාහරින LWP::Protocol::https 6.06 සාමාන්‍ය HTTP CONNECT සඳහා සම්බන්ධීකෘත නිවැරදි කිරීම් හඳුන්වා දුන්නේය. UserAgent අනුවාදය පමණක් HTTPS මොඩියුලය හඳුනා නොගනී. LWP::Protocol::https 6.15 TLS සක්‍රීය ප්‍රොක්සි අන්ත ලක්ෂ්‍ය සඳහා නිවැරදි කිරීමක් එක් කළේය, ඒවායේ https:// ක්‍රමය ඉලක්ක TLS ට පෙර ප්‍රොක්සියට TLS එක් කරයි.

පැරණි Net::SSL/Crypt::SSLeay වින්‍යාස ඒ වෙනුවට එම බැක්එන්ඩ්හි ලේඛනගත HTTPS_PROXY පරිසර යාන්ත්‍රණය භාවිත කළ හැකිය. LWP මාර්ගගත කිරීම හිමි නවීන IO::Socket::SSL මාර්ගයට එහි වට්ටෝරුව යොදන්න එපා.

සංරචකය තෝරා ගැනීමට පළමු අසාර්ථක අදියර භාවිත කරන්න: නොමැති HTTPS හසුරුව ප්‍රොටෝකෝල මොඩියුලයට අදාළය; ප්‍රතික්ෂේපිත CONNECT මාර්ගයට, අක්තපත්‍රවලට හෝ ප්‍රතිපත්තියට අදාළය; උමගට පසු සහතික දෝෂය ඉලක්කයේ අනන්‍යතාවයට සහ විශ්වාසයට අදාළය. එම සාක්ෂිය අනුග්‍රහය දක්වන සංරචකය වෙනස් කරන අතර සත්‍යාපනය රඳවා ගන්න.

අදාළ ලිපි