提到Python的web框架,大部分人肯定第一时间想到的是Flask、Django等,这些框架可谓是大名鼎鼎,但本文讲述的是最近比较火的高性能框架FastApi。
为什么选择FastApi?
它是目前Python最快的web框架之一,根据官网描述,它的性能可比肩Nodejs与Golang,真的是为发烧而生!快速编写代码,友好的编辑器支持非常容易学习代码的健壮性,可用于生产自动交互式文档(这个功能是真赞)基于标准的openAPI上面列举了几点优点,如详细了解请移步FastApi官网
说的辣么好,真实情况如何?来咱们安装体验一下。注意,FastApi要求Python的版本需要3.6+
安装
pip install fastapi
安装好fastapi后,您还需要安装一个ASGI服务器
pip install uvicorn
到此,FastApi已经安装成功了。
创建程序
创建一个main.py文件
from fastapi import FastAPI app = FastAPI() @app.get("/") def index(): return {"Hello": "FastApi"} @app.get("/user") def index(): return {"Hello": "user"}运行
使用以下命令在终端运行服务器:
uvicorn main:app --reload
加上--reload后,当你改了代码时,会自动重启服务
当出现下面提示说明启动成功
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit) INFO: Started reloader process [28720] INFO: Started server process [28722] INFO: Waiting for application startup. INFO: Application startup complete.
这时,可在浏览器访问
可以访问的话,证明FastApi运行成功。
交互式API文档
现在转到http://127.0.0.1:8000/docs
可以在这个页面直接调试。
转到 http://127.0.0.1:8000/redoc
这个文档是根据代码自动生成的,完全剩了编写接口文档的工作,大大的提升了开发效率,真的是太赞了!