支持异步IO、流水线和“expect:100 continue”的HTTP 1.1客户端模块。为restful协议设计。
dugong的Python项目详细描述
python dugong模块提供了与http通信的api
1.1服务器。它是标准库的替代品
http.client
(以前是httplib)模块。与…对比
http.client
,儒艮:
- 允许您在没有 必须先阅读回答。
- 支持发送请求正文前等待100继续。
- 如果 在接收到所有数据之前,连接已关闭。
- 如果连接
已关闭(而
http.client
连接可能引发BrokenPipeError
,~http.client.BadStatusLine
,ConnectionAbortedError
,ConnectionResetError
,~http.client.IncompleteRead
或在读取时简单地返回'' - 支持非阻塞异步操作,并与 asyncio模块。
- 在大多数情况下可以区分不可用的dns服务器和 无法解析的主机名。
- 与旧的HTTP 0.9或1.0服务器不兼容。
所有请求和响应头都表示为str
,但必须是
拉丁语编码。请求和响应正文必须是bytes-like
objects或二进制流。
Dugong需要Python3.3或更新版本。
安装
像往常一样:从PyPi下载tarball,提取它,然后运行
# python3 setup.py install [--user]
要运行自检,请使用pytest-catchlog安装py.test 插件并运行
# python3 -m pytest test/
获取帮助
文档可以是read online,也包括在 doc/htmlDugong tarball目录。
请报告issue tracker上的任何错误。供讨论和 如有疑问,请订阅dugong mailing list。
开发状态
Dugong API还不稳定,可能会从一个版本更改为 其他的。从3.5版开始,儒艮使用语义 版本控制。这意味着api中的更改将反映在 增加主要版本号,即下一个 向后不兼容的版本将是4.0。项目设计 因此,建议儒艮3.5版声明 依赖于dugong >= 3.5, < 4.0。