全书目录

第二篇:FastAPI 完全指南 —— 软件城市政务大厅宇宙

第十三章:错误处理 —— 被拒绝受理,也要拒绝得清楚

1 分钟 131 字 第 59 / 962 个阅读单元

FastAPI 推荐用 HTTPException 直接抛出 API 错误。

py
from fastapi import FastAPI, HTTPException

app = FastAPI()

fake_db = {1: {"id": 1, "owner": "Ada"}}

@app.get("/permits/{permit_id}")
async def get_permit(permit_id: int):
    permit = fake_db.get(permit_id)
    if permit is None:
        raise HTTPException(status_code=404, detail="通行证不存在")
    return permit

关键点:

  • 不是 return HTTPException(...)
  • 而是 raise HTTPException(...)

这意味着资料一旦不合法,请求立刻终止,不会继续执行业务逻辑。