HTTPX 是最近 GitHub看的到一个比较火的一个项目,根据官网描述,总结有以下特色:python
文后的参考中给出了HTTPX基本使用举例,在此不赘述。个人结论至少有二:
(1)简化了传统的同步HTTP操做
(2)简化了异步HTTP操做(也是最大亮点吧)git
如今来看一个在FastAPI开发中测试API的基本例子:github
代码以下:api
代码以下:异步
【注意】若是咱们想在测试中调用异步函数,咱们的测试函数也必须是异步的!Pytest为此提供了一个整洁的库,称为Pytest-asyncio,它容许咱们指定异步调用某些测试函数。安装命令以下:async
安装了Pytest-asyncio后,pytest会自动判断并调用它。若是不安装这个pytest-asyncio库,那么上面代码中从httpx导入AsyncClient时将出现语法错误,提供没有这个类支持!!!ide
httpx是一个正在成长中的年轻Python3库,可是从github用户关注度及Python应用需求现状来看,这个库很是有前景!不管在服务端开发方面,仍是在爬虫开发方面。函数
https://github.com/encode/httpx
https://www.python-httpx.org/advanced/
https://fastapi.tiangolo.com/advanced/async-tests/测试