Nëse detyra është kontrollimi i përgjigjeve HTTP dhe ndjekja e lidhjeve të zakonshme, një shfletues i plotë nuk nevojitet gjithmonë. Ruby Mechanize e ekspozon proxy-n te agjenti që kryen ato kërkesa:

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
end

Kjo supozon se biblioteka mechanize është ngarkuar. Për një kontroll të lejuar të një faqe publike pa vërtetim proxy, lista e proxy-ve HTTP ofron vlera të përshtatshme host/port për shembullin. Metoda proxy pranon gjithashtu emrin e përdoruesit dhe fjalëkalimin si argumentin e tretë dhe të katërt opsional kur endpoint-i i kërkon ato.

Ripërdor agjentin e konfiguruar për kërkesat që i përkasin të njëjtit sesion shfletimi. Ai mbart cookie-t dhe historikun, si dhe cilësimet e rrjetit. Ndryshimi i proxy-s së daljes nuk krijon vetvetiu një identitet të ri dhe nuk hedh poshtë një cookie hyrjeje.

Për disa sesione proxy, jepini secilit agjentin e vet në vend që të ndryshoni një agjent të përbashkët ndërsa puna është në vazhdim. Biblioteka dokumenton gjithashtu emra unikë lidhjeje kur kërkohen lidhje SSL të ndara; emri i konstruktorit në shembull e bën atë zgjedhje të qartë.

Grupimi i kontrolleve të lidhura të URL-së sipas proxy-s mund të zvogëlojë rikonfigurimin e panevojshëm. Mbaj rezultatin të lidhur me rrugën dhe URL-në që e prodhuan, përfshirë ridrejtimet dhe përgjigjet e gabimit.

Mechanize nuk riprodhon ekzekutimin e JavaScript të shfletuesit. Përdor një shfletues të vërtetë kur sjellja në provë varet nga skriptet, renderimi ose vërtetimi specifik i shfletuesit. Një marrje HTTP e suksesshme përmes proxy-s i përgjigjet pyetjes më të ngushtë: se ky agjent mundi ta kryejë atë kërkesë.

Artikuj të ngjashëm