කාර්යය HTTP ප්‍රතිචාර පරීක්ෂා කිරීම සහ සාමාන්‍ය සබැඳි අනුගමනය කිරීම නම්, සම්පූර්ණ බ්‍රවුසරයක් සැමවිටම අවශ්‍ය නොවේ. Ruby Mechanize එම ඉල්ලීම් සිදු කරන නියෝජිතයා මත ප්‍රොක්සිය නිරාවරණය කරයි:

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

මෙය mechanize පුස්තකාලය පූරණය කර ඇතැයි උපකල්පනය කරයි. ප්‍රොක්සි සත්‍යාපනයකින් තොරව අවසර ලත් පොදු පිටුවක් පරීක්ෂා කිරීම සඳහා HTTP ප්‍රොක්සි ලැයිස්තුව උදාහරණයට සුදුසු host/port අගයන් සපයයි. proxy ක්‍රමය endpoint එයට අවශ්‍ය වූ විට පරිශීලක නාමය සහ මුරපදය අමතර තුන්වන සහ සිව්වන තර්ක ලෙසද පිළිගනී.

එකම බ්‍රවුසිං සැසියට අයත් ඉල්ලීම් සඳහා වින්‍යාස කළ නියෝජිතයා නැවත භාවිත කරන්න. එය කුකී සහ ඉතිහාසය මෙන්ම ජාල සැකසුම්ද රැගෙන යයි. පිටවන ප්‍රොක්සිය වෙනස් කිරීමෙන් තමන් විසින්ම නව අනන්‍යතාවක් නිර්මාණය නොවේ, පිවිසුම් කුකීද ඉවත නොදමයි.

ප්‍රොක්සි සැසි කිහිපයක් සඳහා, වැඩ කරගෙන යන අතරතුර එක් හවුල් නියෝජිතයෙක් මාරු කිරීම වෙනුවට එක් එක් සැසියට තමන්ගේම නියෝජිතයෙක් දෙන්න. වෙන් වූ SSL සම්බන්ධතා අවශ්‍ය විට පුස්තකාලය අනන්‍ය සම්බන්ධතා නාමද ලේඛනගත කරයි; උදාහරණයේ constructor නාමය එම තේරීම පැහැදිලි කරයි.

සම්බන්ධිත URL පරීක්ෂණ ප්‍රොක්සිය අනුව කාණ්ඩගත කිරීම අනවශ්‍ය නැවත වින්‍යාසය අඩු කළ හැක. ප්‍රතිඵලය එය නිපදවූ මාර්ගය හා URL සමඟ සම්බන්ධ කර තබන්න, යළි-හරවා යැවීම් සහ දෝෂ ප්‍රතිචාර ඇතුළුව.

Mechanize බ්‍රවුසරයේ JavaScript ක්‍රියාත්මක කිරීම ප්‍රතිනිෂ්පාදනය නොකරයි. පරීක්ෂා කරන හැසිරීම ස්ක්‍රිප්ට්, පින්තාරු කිරීම හෝ බ්‍රවුසර-විශේෂිත සත්‍යාපනය මත රඳා පවතින විට සැබෑ බ්‍රවුසරයක් භාවිත කරන්න. ප්‍රොක්සිය හරහා සාර්ථක HTTP ලබා ගැනීම මෙම නියෝජිතයාට එම ඉල්ලීම කළ හැකි විය යන පටු ප්‍රශ්නයට පිළිතුරු දෙයි.

අදාළ ලිපි