【发布时间】:2010-05-07 22:05:37
【问题描述】:
httplib.HTTPException 有错误代码吗?如果是这样,我如何从异常实例中获取它们?任何帮助表示赞赏。
【问题讨论】:
httplib.HTTPException 有错误代码吗?如果是这样,我如何从异常实例中获取它们?任何帮助表示赞赏。
【问题讨论】:
httplib 模块不使用异常来传达 HTTP 响应,只是真正的错误(无效的 HTTP 响应、损坏的标头、无效的状态代码、过早断开的连接等)大多数 httplib.HTTPException 子类只有一个关联的消息字符串(存储在args 属性中),即使这样。 httplib.HTTPException 本身可能有一个“errno”值作为args 中的第一个条目(通过 httplib.FakeSocket 引发时),但它不是 HTTP 错误代码。
不过,HTTP 响应代码是通过 httplib.HTTPConnection 对象传送的; getresponse 方法将(通常)返回一个HTTPResponse 实例,其中status 属性设置为HTTP 响应代码,reason 属性设置为它的文本版本。这包括像404 和500 这样的错误代码。我说“通常”是因为您(或您使用的库)可以覆盖 httplib.HTTPConnection.response_class 以返回其他内容。
【讨论】: