Panatilihin ang isang Ruby Mechanize agent sa bawat proxy session
Itakda nang isang beses ang proxy ng isang Ruby Mechanize agent, gamitin itong muli para sa kaugnay na mga kahilingan, at sadyang limitahan ang kalagayan ng cookie at mga paulit-ulit na koneksyon.
Kung ang gawain ay pagsuri ng mga tugon ng HTTP at pagsunod sa mga karaniwang link, hindi laging kailangan ang buong browser. Inilalantad ng Ruby Mechanize ang proxy sa agent na gumagawa ng mga kahilingang iyon:
agent = Mechanize.new('office-route')
begin
agent.set_proxy('proxy.example', 8080)
page = agent.get('https://www.example.com/')
puts page.code
ensure
agent.shutdown
endIpinapalagay nito na nakakarga ang library na mechanize. Para sa pinapayagang pagsusuri ng pampublikong pahina nang walang proxy authentication, ang listahan ng HTTP proxy ay nagbibigay ng angkop na halaga ng host/port para sa halimbawa. Tumatanggap din ang proxy method ng username at password bilang opsyonal na ikatlo at ikaapat na argumento kapag kailangan ito ng endpoint.
Gamitin muli ang naka-configure na agent para sa mga kahilingang kabilang sa parehong browsing session. Dinadala nito ang mga cookie at kasaysayan pati na ang mga setting ng network. Ang pagpapalit ng exit proxy ay hindi kusang lumilikha ng bagong pagkakakilanlan o nagtatapon ng login cookie.
Para sa maraming proxy session, bigyan ang bawat isa ng sarili nitong agent sa halip na palitan ang isang nakabahaging agent habang tumatakbo ang trabaho. Idinodokumento rin ng library ang natatanging mga pangalan ng koneksyon kapag kailangan ang hiwalay na SSL connection; ginagawang malinaw ng pangalan ng constructor sa halimbawa ang pagpipiliang iyon.
Ang pagpapangkat ng kaugnay na pagsusuri ng URL ayon sa proxy ay makakabawas ng di-kinakailangang muling pag-configure. Panatilihing nakaugnay ang resulta sa ruta at URL na lumikha nito, kabilang ang mga redirect at tugon ng error.
Hindi ginagaya ng Mechanize ang pagpapatupad ng JavaScript ng browser. Gumamit ng tunay na browser kapag ang inaasahang pag-uugali ay nakasalalay sa mga script, rendering, o authentication na partikular sa browser. Ang matagumpay na pagkuha ng HTTP sa pamamagitan ng proxy ay sumasagot sa mas makitid na tanong: nagawa ng agent na ito ang kahilingang iyon.