2016-01-02 10 views
6

क्या पाइथन में HTTP/1 और HTTP/2 के लिए अनुरोध करने में कोई अंतर है।पाइथन में HTTP 2 अनुरोध 2.7

मैं अजगर HTTP/2 डिफ़ॉल्ट रूप से या मैं कुछ भी अतिरिक्त जोड़ना चाहिए बनाने का समर्थन है की तरह

url = 'http://someURL' 
values = {'param1' : 'key', 
      'param2' : 'key2'} 
data = urllib.urlencode(values) 
print data 
req = urllib2.Request(url, data) 
response = urllib2.urlopen(req) 
the_page = response.read() 
print the_page 

अजगर में HTTP/1.x कॉल कर सकते हैं।

+1

मैं * लगभग सुनिश्चित हूं * यह HTTP2 का उपयोग करता है, और आप इसके लिए दस्तावेज़ देख सकते हैं। लेकिन मुझे लगता है कि आप 'अनुरोध' लाइब्रेरी का उपयोग कर बेहतर हैं। ('पीआईपी अनुरोध अनुरोध ')। वे कहते हैं कि 'urllib2' "पूरी तरह से टूटा हुआ है ..." –

+2

FYI: https://hyper.readthedocs.org/en/latest/ –

+0

@ पैड्राइक कनिंघम यह' अनुरोध 'के लेखक हैं। –

उत्तर

4

जैसा कि अन्य लोगों ने प्रश्न में टिप्पणियों में उल्लेख किया है requests लाइब्रेरी HTTP/2 का समर्थन नहीं करती है।

requests पुस्तकालय documentation से:

अनुरोध आप शारीरिक श्रम की आवश्यकता के बिना, जैविक, घास खिलाया HTTP/1.1 अनुरोध भेजने के लिए अनुमति देता है।

के रूप में अब केवल HTTP/2 अजगर के लिए ग्राहक मुझे पता है की hyper, जो डॉक्स से उद्धृत है:

अजगर 3.4 और अजगर 2.7.9 का समर्थन करता है, और बात कर सकते हैं HTTP/2 और HTTP/1.1

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