Механизенің нысанында маршрутты алу алдында орнатыңыз:

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 backend-ымен TLS мүмкіндігі бар сокетті ұсынады, қазіргі конфигурацияларда әдетте IO::Socket::SSL.

Орнатылған SSL backend өздігінен прокси таңдамайды. Түпнұсқа 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 конфигурациялары оның орнына сол backend-тың құжатталған HTTPS_PROXY орта механизмін пайдалана алады. Оның рецептін LWP маршруттауды иеленетін қазіргі IO::Socket::SSL жолына қолданбаңыз.

Компонентті таңдау үшін бірінші сәтсіз кезеңді пайдаланыңыз: жоқ HTTPS өңдеушісі протокол модуліне қатысты; қабылданбаған CONNECT маршрутқа, тіркелгі деректеріне немесе саясатқа қатысты; туннельден кейінгі сертификат қатесі мақсаттың сәйкестігі мен сеніміне қатысты. Сол дәлел қолдайтын компонентті өзгертіп жатқанда тексеруді сақтаңыз.

Қатысты мақалалар