httplib2中是否有httplib.HTTPConnection()的直接等效?

0 投票
1 回答
3534 浏览
提问于 2025-04-17 12:46

我正在尝试解决一个问题,具体是当我在 Python 2.7 的 API 中使用 httplib 时,会出现一个异常,内容是 HTTPException('ApplicationError: 5 ',)。这个问题在这篇文章中有详细说明:在与外部 API 通信时出现 ApplicationError2 和 ApplicationError5。我想,也许可以尝试使用 httplib2。根据我的观察,API 中唯一调用 httplib 的地方是:

def _get_conn(self):
    return httplib.HTTPConnection(str(self.host), str(self.port), timeout=120)

请问在 httplib2 中有没有和 httplib.HTTPConnection() 直接对应的功能?我搜索了一下,但找不到相关的信息。

1 个回答

1

看起来确实有这个东西,可以看看 AppEngineHttpConnection这个链接的代码

不过,按照我所知道的,这些并不是官方的 httplib2 接口的一部分,具体可以参考他们的 文档。你可以考虑用下面这种方式:

import httplib2
h = httplib2.Http()
resp, content = h.request("http://bitworking.org/")
assert resp.status == 200
assert resp['content-type'] == 'text/html'

你有没有考虑过使用 Request 库?最近它得到了很多好评。

撰写回答