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 या PAC URL नहीं।

HTTParty शामिल करने वाली रैपर क्लास इसके बजाय डिफ़ॉल्ट सेट करने के लिए अपनी http_proxy क्लास विधि का उपयोग कर सकती है। अनुरोध विकल्प उन्हें देने वाले कॉल के लिए उन डिफ़ॉल्ट को बदल देते हैं।

यह HTTParty के डिफ़ॉल्ट कनेक्शन एडाप्टर का वर्णन करता है। कस्टम connection_adapter अपने विकल्पों को समझाने के लिए उत्तरदायी है, इसलिए जब कोई मान्य सेटिंग अनदेखी लगे तो उस एडाप्टर की जाँच करें। HTTP स्थिति को पार्स किए गए API डेटा से अलग पढ़ें; सफल JSON पार्सिंग प्रमाणीकरण का परिणाम नहीं है।

संबंधित लेख