目录
一、简介
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,要求使用 Python 3.6及以上版本。
关键特性:
- 快速:可与 NodeJS 和 Go 比肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。
- 高效编码:提高功能开发速度约 200% 至 300%。
- 更少 bug:减少约 40% 的人为(开发者)导致错误。
- 智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
- 简单:设计的易于使用和学习,阅读文档的时间更短。
- 简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
- 健壮:生产可用级别的代码。还有自动生成的交互式文档。
- 标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。
官方文档:
- 官方中文文档:https://fastapi.tiangolo.com/zh/
- 官方文档: https://fastapi.tiangolo.com
二、安装
pip install fastapi-i https://pypi.tuna.tsinghua.edu.cn/simple
pip install uvicorn -i https://pypi.tuna.tsinghua.edu.cn/simple
三、代码
Web.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/info")
def info():
return {"key": "HelloWorld"}
WebMain.py
import uvicorn
if __name__ == '__main__':
uvicorn.run(app='Web:app', host='127.0.0.1', port=8000, reload=True, debug=True)
代码解释:
app = FastAPI() 用于实例化 FastAPI类,通常app这个变量会设置成全局的,至少在当前模块作用域有效。
uvicorn.run(app='Web:app', host='127.0.0.1', port=8000, reload=True, debug=True):
表示使用uvicorn启动Web.py这个文件里的app实例,reload=True的意思是文件内容变更后自动重启服务,便于开发调试。
四、运行及展示
可以将这两个py文件放到Linux上运行,host改为相应ip,运行命令:python WebMain.py;
也可以在本地编辑器直接运行;
访问展示: