[FastAPI-40]APIRouter使用

发布时间 2023-03-30 13:49:29作者: LeoShi2020

1. 文件结构

├── main.py
└── routers
    ├── blog.py
    └── user.py

2. blog.py

from fastapi import APIRouter

router = APIRouter()


@router.get("/blogs")
def blogs():
    return [{"id": i, "title": f"blog{i}"} for i in range(10)]


@router.get("/{blog_id}")
def get_blog(blog_id: int):
    return {"id": blog_id, "title": f"blog{blog_id}"}


@router.delete("/{blog_id}")
def delete(blog_id: int):
    return {"code": 1, "msg": f"Done blog_id: {blog_id}"}

3. user.py

from fastapi import APIRouter, Form


router = APIRouter(tags=["User"], prefix="/user")


@router.post("/login")
def login(name: str = Form(), pwd: str = Form()):
    return {"name": name}


@router.get("/me")
def info():
    return {"info":  "this is a cute boy"}

4. main.py

from fastapi import FastAPI
from routers import blog, user

app = FastAPI()
app.include_router(blog.router, prefix="/blog", tags=["Blog"])
app.include_router(user.router)