FastAPI简单入门
简介
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。
关键特性:
-
快速:可与 NodeJS 和 Go 比肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。
-
高效编码:提高功能开发速度约 200% 至 300%。*
-
更少 bug:减少约 40% 的人为(开发者)导致错误。*
-
智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
-
简单:设计的易于使用和学习,阅读文档的时间更短。
-
简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
-
健壮:生产可用级别的代码。还有自动生成的交互式文档。
-
标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。
注:摘录与FastAPI官方文档
简单入门
1、安装
pip install fastapi
pip install uvicorn
2、简单的demo
main.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello World"}
3、运行
1)命令行运行
uvicorn main:app --port 8888 --reload
命令含义如下:
- main:main.py 文件(一个 Python「模块」)。
- app:在 main.py 文件中通过 app = FastAPI() 创建的对象。
- -port:执行端口号
- -reload:让服务器在更新代码后重新启动。仅在开发时使用该选项。
2)代码运行
可以直接运行py文件
if __name__ == '__main__':
import uvicorn
uvicorn.run(app="main:app", host="127.0.0.1", port=8888)
4、 访问
http://127.0.0.1:8888 # 访问接口
http://127.0.0.1:8888/docs # 交互式API文档(Swagger UI)
http://127.0.0.1:8888/redoc # 可选的API文档