ការផ្ទៀងផ្ទាត់ប្រូកស៊ី HTTParty៖ ម៉ាស៊ីន ច្រក ឈ្មោះអ្នកប្រើ និងពាក្យសម្ងាត់
ផ្ញើម៉ាស៊ីនប្រូកស៊ី HTTP ច្រកជាលេខ និងព័ត៌មានប្រូកស៊ីស្រេចចិត្ត ទៅកាន់សំណើ HTTParty ដោយផ្ទាល់ ដោយរក្សា API token ក្នុងបឋមកថារបស់វា។
HTTParty ទទួលយកប្រូកស៊ីខាងមុខជាជម្រើសសំណើ។ រក្សា URL សេវាជាអាគុយម៉ង់ទីមួយ៖
response = HTTParty.get(
'https://api.example/items',
http_proxyaddr: 'proxy.example',
http_proxyport: 8080,
http_proxyuser: ENV.fetch('PROXY_USER'),
http_proxypass: ENV.fetch('PROXY_PASSWORD'),
headers: { 'Authorization' => "Bearer #{ENV.fetch('API_TOKEN')}" },
open_timeout: 5,
read_timeout: 15
)
puts response.code
ម៉ាស៊ីន និងច្រកប្រូកស៊ីកំណត់អ្នកកណ្តាល។ ឈ្មោះអ្នកប្រើ និងពាក្យសម្ងាត់ប្រូកស៊ីត្រូវផ្ទៀងផ្ទាត់នៅទីនោះ។ បឋមកថា Authorization ជារបស់ API ដែលគណនីរបស់វាអាចខុសគ្នាទាំងស្រុង។
សម្រាប់ប្រូកស៊ីដែលគ្មានការផ្ទៀងផ្ទាត់ សូមលុប http_proxyuser និង http_proxypass ចេញ។ សម្រាប់សំណើ API សាធារណៈលើផ្លូវសាធារណៈដែលអនុញ្ញាត យកអាសយដ្ឋាន HTTP ពីបញ្ជីប្រូកស៊ី HTTP ដោយមិនរក្សាព័ត៌មានប្រូកស៊ីក្នុងសំណើ ឬក្នុងតម្លៃលំនាំដើមរបស់ថ្នាក់។ វាលម៉ាស៊ីនត្រូវផ្ញើជាអាសយដ្ឋានប្រូកស៊ីទៅ Net::HTTP៖ ផ្តល់ឈ្មោះម៉ាស៊ីនដាច់ពីច្រករបស់វា មិនមែន URL គោលដៅ ឬ URL PAC ទេ។
ថ្នាក់រុំព័ទ្ធដែលរួមបញ្ចូល HTTParty អាច ប្រើវិធីសាស្ត្រថ្នាក់ http_proxy ដើម្បីកំណត់តម្លៃលំនាំដើម ជំនួសវិញ។ ជម្រើសសំណើឈ្នះលើតម្លៃលំនាំដើមទាំងនោះ សម្រាប់ការហៅដែលផ្តល់ពួកវា។
នេះពិពណ៌នាអំពីអាដាប់ទ័រតភ្ជាប់លំនាំដើមរបស់ HTTParty។ connection_adapter ផ្ទាល់ខ្លួនមានតួនាទីបកស្រាយជម្រើសរបស់វា ដូច្នេះពិនិត្យអាដាប់ទ័រនោះ នៅពេលការកំណត់ត្រឹមត្រូវហាក់ដូចជាត្រូវបានមិនអើពើ។ អានស្ថានភាព HTTP ដោយឡែកពីទិន្នន័យ API ដែលបានញែក; ការញែក JSON ជោគជ័យមិនមែនជាលទ្ធផលផ្ទៀងផ្ទាត់ទេ។