我编写了一个运行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,也没有抛出异常。
谁能告诉我这是什么问题?
答案 0 :(得分:0)
查看httplib2的github repository,您将在第1367行和第1400行之间找到,如果状态为300,则会引发RedirectMissingLocation。但是对于302,它不会引发您希望捕获的异常。