Python httplib2异常未按预期抛出

时间:2015-04-30 03:05:32

标签: python httplib2

我编写了一个运行python http请求函数的脚本 代码如下:

header = {'Content-Type': 'application/x-www-form-urlencoded'}
data = {'username':"admin", 'passwd':"passwd"}
data = urllib.urlencode(data)
http = httplib2.Http() 
http.force_exception_to_status_code = False
try:    
    print "force_exception_to_status_code"+http.force_exception_to_status_code
    response, content = http.request(self.url, 'POST', headers=header, body=data)
    print response

except httplib2.RedirectMissingLocation:

    print "Error"

控制台给了我:

force_exception_to_status_code =真

{'status':'302','transfer-encoding':'chunked','server'.....)

但是,即使我已经将force_exception_to_status_code设置为false,也没有抛出异常。

谁能告诉我这是什么问题?

1 个答案:

答案 0 :(得分:0)

查看httplib2的github repository,您将在第1367行和第1400行之间找到,如果状态为300,则会引发RedirectMissingLocation。但是对于302,它不会引发您希望捕获的异常。