2011-06-19 60 views
2

我需要向Web服務發送PUT請求,並從錯誤標頭中獲取一些數據,這些數據是請求的預期結果。代碼如下:使用urllib2獲取錯誤標頭

Request = urllib2.Request(destination_url, headers=headers) 
Request.get_method = lambda: 'PUT' 

try: 
    Response = urllib2.urlopen(Request) 
except urllib2.HTTPError, e: 
    print 'Error code: ', e.code 
    print e.read() 

我得到錯誤308,但響應是空的,我沒有從HTTPError獲取任何數據。有沒有辦法在獲取HTTP錯誤時獲取HTTP標頭?

回答

3

e沒有記錄headershdrs屬性包含由服務器發送的HTTP頭。

順便說一下,308是not a valid HTTP status code

+0

謝謝!有用!我知道308是無效的,但Youtube使用它來檢查上傳狀態。 – rcknr