2010-01-27 15 views
13

मैं ट्विस्ट किए गए HTTP क्लाइंट के उपयोग का वर्णन करने वाले उदाहरण के बाद हूं।घुमावदार http क्लाइंट

उत्कृष्ट blog post on the internals of Twisted पढ़ने के बाद, मैं समझता हूं कि कैसे "फैक्टरी" और "प्रोटोकॉल" घटक उनकी भूमिका निभाते हैं लेकिन मैं स्पष्ट हूं कि समग्र ग्राहक प्रवाह में "अनुरोध" कैसे पेश किया जाए।

अधिक विशेष रूप से, मुझे ट्विस्ट किए गए दूरस्थ सर्वर पर HTTP GET और POST अनुरोध करने में सक्षम होना चाहिए।

अपडेट किया गया: irc पर एक चर्चा #twisted/#python के बाद, ऐसा लगता है कि twisted.web2twisted.web उदा पर कार्यक्षमता को बढ़ा के पक्ष में दूर fading है एजेंट।

उत्तर

17

ट्विस्ट 9.0 के रूप में, वास्तव में दो HTTP क्लाइंट उपलब्ध हैं। पुराने ऐसे ही एक स्वचालित रूप से रीडायरेक्ट निम्नलिखित, कुकी हेडर की व्याख्या, आदि के रूप काफी कुछ विशेषताएं हैं, आप इसके उपयोग का एक उदाहरण यहां पा सकते हैं:

http://twistedmatrix.com/documents/current/web/examples/

(getpage.py और dlpage.py)

दुर्भाग्य से , पुराने क्लाइंट द्वारा प्रस्तुत इंटरफ़ेस कई सामान्य कार्यों को मुश्किल बनाता है। उदाहरण के लिए, getPage का उपयोग करके, आप मनमानी प्रतिक्रिया शीर्षलेखों की जांच नहीं कर सकते हैं।

नया HTTP क्लाइंट अभी तक पुराना नहीं है, लेकिन यह getPage की सीमाओं को समाप्त करने के लिए एक इंटरफ़ेस प्रस्तुत करता है। यह भी अधिक आसानी से विस्तारित और अनुकूलित करने का इरादा है। आप किसी दस्तावेज़ यहां इसके उपयोग का वर्णन पा सकते हैं:

http://twistedmatrix.com/documents/current/web/howto/client.html

+0

अद्भुत! वास्तव में मुझे क्या चाहिए! – jldupont

+1

... सिवाय इसके कि यह केवल 9.0.0 में उपलब्ध है ... अरह! – jldupont

+5

क्या आप चाहेंगे कि हम सुधार करना बंद कर दें, ताकि नए संस्करणों में कुछ भी अच्छा न हो? :) – Glyph

2

मैं मुड़ के साथ treq उपयोग शुरू कर दिया। ट्रेक में एक एपीआई है जो अनुरोधों के समान ही है। https://pypi.python.org/pypi/treq/0.2.0

संबंधित मुद्दे