python fastapi使用、uvicorn

文章目录

比flask性能高不少,是未来的趋势,应该了解下。

项目依赖:

python 复制代码
pip install fastapi uvicorn

示例

1、用已有的pycharm项目就行,项目下创建app文件夹,app下创建api文件夹,app下创建main.py,代码:

python 复制代码
from fastapi import FastAPI
from app.api import users, items  # 导入路由模块

# 1. 创建唯一的 FastAPI 应用实例
app = FastAPI(title="我的多文件应用")

# 2. 将各个模块的路由器注册到主应用上
# 这样,users 和 items 的路由就"复用"了同一个 app 实例
app.include_router(users.router)
app.include_router(items.router)

# 你也可以在这里定义一些全局的路由
@app.get("/")
def read_root():
    return {"message": "欢迎访问主应用!"}

2、api下创建users.py,代码:

python 复制代码
from fastapi import APIRouter

# 为这个模块创建一个独立的路由器
router = APIRouter(prefix="/users", tags=["用户管理"])

@router.get("/")
def get_users():
    return [{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]

@router.get("/{user_id}")
def get_user(user_id: int):
    return {"id": user_id, "name": f"User {user_id}"}

3、api下创建items.py,代码:

python 复制代码
from fastapi import APIRouter

# 为这个模块创建另一个独立的路由器
router = APIRouter(prefix="/items", tags=["商品管理"])

@router.get("/")
def get_items():
    return [{"id": 101, "name": "Laptop"}]

4、uvicorn命令启动项目

bash 复制代码
uvicorn app.main:app --port 8000 --reload

5、浏览器验证(postman也可以)
http://localhost:8000/users/ # 列表
http://localhost:8000/users/2 # 查看id为2的用户信息

相关推荐
怕浪猫36 分钟前
RAG 面试 6 连问,从原理到优化全部覆盖
python·算法·面试
高洁011 小时前
具身智能中的世界模型训练
人工智能·python·深度学习·机器学习·transformer
无线通信科研笔记1 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
朝朝辞暮i1 小时前
VLA 系统学习第 1 课:VLA 到底在干什么?
人工智能·python·计算机视觉·vla
2601_962885722 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
爱吃奥利奥_wen2 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
北冥有鱼被烹2 小时前
VCSEL全景解析:与光模块NPO CPO的关系、市场量化分析与产业链影响
python
我可能是个假开发2 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring
caoerzhong3 小时前
中小企业上 WMS 该先上哪几块:JeeWMS 开源 Java 仓库管理系统的分批上线清单
java·python·开源
正在走向自律3 小时前
AI数据分析与可视化:从基础到应用实践
服务器·人工智能·python·机器学习·数据分析·pandas