python httplib httpexception错误代码

时间:2010-05-07 22:05:38

标签: python http exception tcp

httplib.HTTPException是否有错误代码?如果是这样,我如何从异常实例中获取它们?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:5)

httplib模块不使用异常来传达HTTP响应,只是真正的错误(无效的HTTP响应,断开的标头,无效的状态代码,过早断开的连接等)。大多数httplib.HTTPException子类只是有一个关联的消息字符串(存储在args属性中),即使这样。 httplib.HTTPException本身可能有一个“errno”值作为args中的第一个条目(当通过httplib.FakeSocket引发时),但它不是HTTP错误代码。

HTTP响应代码通过httplib.HTTPConnection对象传送; getresponse方法将(通常)返回HTTPResponse实例,其中status属性设置为HTTP响应代码,reason属性设置为文本版本。其中包括404500等错误代码。我说“通常”因为您(或您使用的图书馆)可以覆盖httplib.HTTPConnection.response_class以返回其他内容。