本月,一款名为FastAPI的轻量级Web框架在trending榜上有名。本着踩坑的心态试用了fastapi,发现其坑并没有许多相同量级web框架(比如flask)来的多,上手极其容易。因此果断整理了一下fastapi的上手过程。
FastAPI基于Starlette网络框架进行封装,不仅性能优异,并且解决了许多用python开发效率工具或是轻量级应用的后端同学的痛点。比如:
- 结合pydantic,实现param与body的静态类型检查
- 用妥当的方式接收/返回json body
- 结合Starlette,从而自带restful api以及middleware的支持
- 自带调试router,基本顶替postman的工作
- etc
安装fastapi需要python3.6以上,预先pip3 install fastapi uvicorn
。我们来看一下FastAPI的例子: