Ṣeto ipa-ọ̀nà lori ohun Mechanize ṣaaju gbigba:

use WWW::Mechanize;

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

Lo olutẹtisi HTTP ti a pinnu ninu apẹẹrẹ; fun awọn ibeere ti a gba laaye si awọn ibi-afẹde gbangba, awọn oludije wa ninu akojọ proxy HTTP. Àkójọ náà sọ àwọn èròjà ìdí. Ibi-ipari http:// pese ipa-ọ̀nà CONNECT lasan fun HTTPS: HTTP si proxy, ojú-òpóòpò si ibi-afẹde, lẹhinna TLS ibi-afẹde. Ti imuṣiṣẹ ba lo awọn eto ayika dipo, $mech->env_proxy ni yiyan; gbigbe wọn wọle nigbamii le yi ipa-ọ̀nà ti a yan ninu koodu pada.

Mechanize jogun nẹtiwọọki LWP::UserAgent dipo ki o pese ẹrọ proxy HTTPS lọtọ:

  • Mechanize pese awọn ọna asopọ, awọn fọọmu ati ihuwasi oju-iwe lọwọlọwọ.
  • LWP::UserAgent ati gbigbe HTTP rẹ yan ipa-ọ̀nà naa ati ṣeto CONNECT.
  • LWP::Protocol::https pese mimu HTTPS ati igbega asopọ naa.
  • Net::HTTPS pẹlu backend SSL rẹ pese socket ti o lagbara TLS, nigbagbogbo IO::Socket::SSL ninu awọn atunto ode-oni.

Backend SSL ti a fi sori ẹrọ ko yan proxy funrararẹ. Tọju orukọ olupin HTTPS atilẹba ninu URL: gbigba CONNECT ko ṣe idaniloju ijẹrisi ti aaye yẹn.

Nigba mimu awọn paati atijọ, ya awọn aala wọnyi sọtọ. libwww-perl 6.06 ati LWP::Protocol::https 6.06 ti a pin kaakiri lọtọ ṣafihan awọn atunṣe isọdọkan fun HTTP CONNECT deede. Ẹya UserAgent nikan ko ṣe idanimọ module HTTPS. LWP::Protocol::https 6.15 ṣafikun atunṣe fun awọn ibi-ipari proxy ti o ni TLS, ti ero wọn https:// fi TLS kun proxy ṣaaju TLS ibi-afẹde.

Awọn atunto Net::SSL/Crypt::SSLeay ti o ti dagba le lo dipo ọna ayika HTTPS_PROXY ti a kọ silẹ ti backend yẹn. Maṣe lo ilana rẹ lori ọna IO::Socket::SSL ode-oni, nibiti LWP ni ipa-ọ̀nà.

Lo ipele akọkọ ti o kuna lati yan paati naa: olutọju HTTPS ti o nsọnu kan module ilana; CONNECT ti a kọ silẹ kan ipa-ọ̀nà, awọn ẹri tabi eto imulo; aṣiṣe ijẹrisi lẹhin ojú-òpóòpò kan idanimọ ati igbẹkẹle ibi-afẹde. Tọju idaniloju nigba ti o yipada paati ti ẹri yẹn ṣe atilẹyin.

Àwọn àpilẹ̀kọ tó jọra