រក្សា Ruby Mechanize agent សម្រាប់សេសស្យុង proxy នីមួយៗ
កំណត់ proxy របស់ Ruby Mechanize agent ម្តង ប្រើវាឡើងវិញសម្រាប់សំណើពាក់ព័ន្ធ ហើយកំណត់ស្ថានភាព cookie និងការតភ្ជាប់បន្តដោយចេតនា។
ប្រសិនបើការងារគឺពិនិត្យការឆ្លើយតប HTTP និងដើរតាមតំណធម្មតា នោះមិនតែងតែត្រូវការកម្មវិធីរុករកពេញលេញទេ។ Ruby Mechanize បង្ហាញ proxy នៅលើ agent ដែលធ្វើសំណើទាំងនោះ៖
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 ត្រូវបានផ្ទុក។ សម្រាប់ការពិនិត្យទំព័រសាធារណៈដែលបានអនុញ្ញាតដោយគ្មានការផ្ទៀងផ្ទាត់ proxy បញ្ជី proxy HTTP ផ្តល់តម្លៃ host/port សមស្របសម្រាប់ឧទាហរណ៍។ វិធីសាស្ត្រ proxy ក៏ទទួលយកឈ្មោះអ្នកប្រើ និងពាក្យសម្ងាត់ជាអាគុយម៉ង់ទីបី និងទីបួនជាជម្រើស នៅពេល endpoint ត្រូវការពួកវា។
ប្រើ agent ដែលបានកំណត់រចនាសម្ព័ន្ធឡើងវិញសម្រាប់សំណើដែលជាកម្មសិទ្ធិរបស់សេសស្យុងរុករកដូចគ្នា។ វាផ្ទុក cookie និងប្រវត្តិ ព្រមទាំងការកំណត់បណ្តាញ។ ការផ្លាស់ប្តូរ proxy ចេញមិនបង្កើតអត្តសញ្ញាណថ្មីដោយខ្លួនឯង ឬបោះបង់ cookie ចូល។
សម្រាប់សេសស្យុង proxy ជាច្រើន ផ្តល់ agent ផ្ទាល់ខ្លួនដល់ពួកវានីមួយៗ ជំនួសឱ្យការផ្លាស់ប្តូរ agent រួមមួយនៅពេលការងារកំពុងដំណើរការ។ បណ្ណាល័យក៏រាយការណ៍ឈ្មោះការតភ្ជាប់តែមួយគត់ នៅពេលត្រូវការការតភ្ជាប់ SSL ដាច់ដោយឡែក។ ឈ្មោះ constructor ក្នុងឧទាហរណ៍ធ្វើឱ្យជម្រើសនោះច្បាស់លាស់។
ការដាក់ក្រុមការពិនិត្យ URL ពាក់ព័ន្ធតាម proxy អាចកាត់បន្ថយការកំណត់រចនាសម្ព័ន្ធឡើងវិញដែលមិនចាំបាច់។ រក្សាលទ្ធផលភ្ជាប់ជាមួយផ្លូវ និង URL ដែលបានបង្កើតវា រួមទាំងការបង្វែរនិងការឆ្លើយតបកំហុស។
Mechanize មិនបង្កើតការប្រតិបត្តិ JavaScript របស់កម្មវិធីរុករកឡើងវិញទេ។ ប្រើកម្មវិធីរុករកពិត នៅពេលអាកប្បកិរិយាដែលកំពុងសាកល្បងអាស្រ័យលើ script ការបង្ហាញ ឬការផ្ទៀងផ្ទាត់ជាក់លាក់របស់កម្មវិធីរុករក។ ការទាញយក HTTP ជោគជ័យតាម proxy ឆ្លើយនឹងសំណួរតូចជាងនេះ៖ agent នេះអាចធ្វើសំណើនោះបាន។