Tornado प्रोक्सी विकल्पलाई सही HTTP ब्याकएन्ड चाहिन्छ
प्रोक्सी अनुरोध विकल्प कन्फिगर गर्नु अघि Tornado को सक्रिय HTTP क्लाइन्ट कार्यान्वयन जाँच गर्नुहोस्।
Tornado एउटा असमकालिक HTTP क्लाइन्ट इन्टरफेस दिन्छ, जसको तल फरक-फरक कार्यान्वयनहरू छन्। त्यसैले प्रोक्सी एन्डपोइन्ट सही भए पनि छानिएको कार्यान्वयनका कारण प्रोक्सी विकल्पहरू असफल हुन सक्छन्।
HTTP क्लाइन्ट कागजात ले SimpleAsyncHTTPClient लाई पूर्वनिर्धारित कार्यान्वयनका रूपमा चिन्छ र curl-आधारित विकल्पको कागजात बनाउँछ। proxy_host जस्ता अनुरोध विकल्पहरूसँग कार्यान्वयन-विशिष्ट समर्थन टिप्पणीहरू छन्। fetch कलमा विकल्प थप्नु अघि ती टिप्पणीहरू पढ्नुहोस्।
क्लाइन्ट बनाउनु अघि कन्फिगर गर्नुहोस्
पहिले नै curl ब्याकएन्ड भएको वातावरणमा, एप्लिकेसनले आफ्नो साझा क्लाइन्ट बनाउनु अघि यसलाई छान्न सक्छ:
from tornado.httpclient import AsyncHTTPClient
AsyncHTTPClient.configure('tornado.curl_httpclient.CurlAsyncHTTPClient')
client = AsyncHTTPClient()
त्यसपछि इच्छित कलका लागि कागजात भएका प्रोक्सी होस्ट, पोर्ट, प्रमाणीकरण र टाइमआउट अनुरोध विकल्पहरू प्रयोग गर्नुहोस्। होस्टनामलाई सङ्ख्यात्मक पोर्टबाट अलग राख्नुहोस्। ब्याकएन्ड छान्दा आफैंमा प्रोक्सी एन्डपोइन्ट छानिँदैन। अनुमति दिइएको सार्वजनिक HTTP मार्गका लागि HTTP प्रोक्सी सूची ले ती अनुरोध विकल्पहरूका लागि होस्ट र पोर्ट उम्मेदवार दिन्छ।
यो कोड चल्नु अघि एप्लिकेसन वा फ्रेमवर्कले HTTP क्लाइन्ट बनाएर राख्न सक्ने भएकाले क्लाइन्ट निर्माण महत्त्वपूर्ण छ। असफल अनुरोधमा प्रयोग भएको वास्तविक इन्स्टेन्स जाँच गर्नुहोस्, पछि अर्को क्लाइन्ट बनाएर त्यसले पहिलोलाई व्याख्या गर्छ भनी मान्नुको सट्टा।
निदानका लागि सक्रिय ब्याकएन्ड र त्यसको आधारभूत लाइब्रेरी संस्करण असफल चरणसँगै अभिलेख गर्नुहोस्। असमर्थित अनुरोध विकल्पलाई नेटवर्क टाइमआउट र प्रोक्सीले फर्काएको HTTP प्रतिक्रियाबाट छुट्याउनुहोस्। ती अवलोकनहरू फरक-फरक सुधारतर्फ लैजान्छन्।