質問

EDITます:

この質問は無効です。透過プロキシは、urllibは/ httplibは確かにもともとHTTP 1.1リクエストを作っていたにもかかわらず、以降HTTP 1.0リクエストを作っていたが判明します。

元の質問:

デフォルトurllib2.urlopenでは常にHTTP 1.0要求を行います。

これはHTTP 1.1を話を取得する方法はありますか?

役に立ちましたか?

解決

なぜあなたはそれがすでにHTTP 1.1を使用していないと思いますか?あなたのような何かを試してみました...。

>>> import urllib2
>>> urllib2._opener.handlers[1].set_http_debuglevel(100)
>>> urllib2.urlopen('http://mit.edu').read()[:10]
connect: (mit.edu, 80)
send: 'GET / HTTP/1.1

(などなど)?これは、すでに1.1 GETリクエストを送信しています表示する必要があります。

他のヒント

urllib2のは、HTTP要求を行うことhttplibを使用しています。それは1.1、1.0または0.9サーバーからの応答を処理することができますが、私はPython 2.6.4は間違いなく、httplibにHTTP / 1.1を使用しています。までさかのぼる2.3などのように、これは(おそらくバック1.5へと)ケースであるように見える。

これは、プロキシを介してトンネルする必要がある場合は、それはこのような要求を送信する

CONNECT host:port HTTP/1.0

と文字列がハードコーディングされて/1.0こと。

あなたは、Pythonのバージョンは何を使っている、そしてどのようにurllib2のを使用していますか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top