Python框架-FastAPI
FastAPI是一个现代、快速(高性能)的web框架,用于构建API。
官网: https://fastapi.tiangolo.com/
源码: https://github.com/fastapi/fastapi
安装
# 安装 FastAPI
pip install fastapi
# 安装 Uvicorn(用于运行 ASGI 服务器)
pip install uvicorn
创建一个main.py
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
使用 Uvicorn 运行应用
uvicorn main:app --reload
# main: 指的是 main.py 文件(不需要写 .py 扩展名)。
# app: 指的是在 main.py 文件中创建的 FastAPI 实例。
# --reload: 启用自动重载,使代码更改立即生效。
打开浏览器,访问 http://127.0.0.1:8000
,将看到以下 JSON 响应:
{"Hello": "World"}
简单样例
from fastapi import FastAPI
from pydantic import BaseModel
from typing import Optional
app = FastAPI()
# 定义数据模型
class Item(BaseModel):
name: str
description: str = None
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.post("/items/")
def create_item(item: Item):
return item
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}
@app.put("/items/{item_id}")
def update_item(item_id: int, item: Item):
return {"item_name": item.name, "item_id": item_id}
交互式文档
FastAPI 提供了自动生成的交互式 API 文档。启动应用后,访问以下 URL:
- Swagger UI 文档:http://127.0.0.1:8000/docs
- ReDoc 文档:http://127.0.0.1:8000/redoc
直接可以在页面中测试API接口,比如发送一个 POST 请求到 /items/
,在Request body
中编辑
{
"name": "test",
"description": "test"
}
点击Execute
,可以在Responses
中看到响应结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)