分类: 开发教程
是否完结:完结
更新时间: 2024-02-25 21:14:04
总字节数:239,196
总章节数:57
浏览: 6℃
评分:1.18
最新章节: FastAPI教程 高级安全 - 介绍
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。
FastAPI 框架,高性能,易于学习,高效编码,生产可用
文档: https://fastapi.tiangolo.com
源码: https://github.com/tiangolo/fastapi
FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于标准的 Python 类型提示。
关键特性:
快速:可与 NodeJS 和 Go 比肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。
高效编码:提高功能开发速度约 200% 至 300%。*
* 根据对某个构建线上应用的内部开发团队所进行的测试估算得出。
如果你正在开发一个在终端中运行的命令行应用而不是 web API,不妨试下 Typer。
Typer 是 FastAPI 的小同胞。它想要成为命令行中的 FastAPI。
Python 3.6 及更高版本
FastAPI 站在以下巨人的肩膀之上:
在命令提示符(macOS或者Linux的终端)中使用pip安装FastAPI:
pip install fastapi
████████████████████████████████████████ 100%
安装完FastAPI后还需要一个 ASGI 服务器来运行相应的代码,生产环境可以使用 Uvicorn或者 Hypercorn。
安装方法也是在命令提示符中使用pip进行安装:
pip install uvicorn
████████████████████████████████████████ 100%
from typing import Optional
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}
或者使用 async def
...
如果你的代码里会出现 async
/ await
,请使用 async def
:
from typing import Optional
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
async def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}