在實際開發中,我們經常需要透過網址來指定特定的資源,例如想取得 ID 為 5 的使用者資料,網址可能會是 /users/5。這在 FastAPI 中稱為「路徑參數」。
FastAPI 強烈依賴 Python 的型別提示。當你宣告了參數的型別,FastAPI 就會在背景幫你做好資料驗證。
from fastapi import FastAPI
app = FastAPI()
@app.get("/users/{user_id}")
def get_user(user_id: int):
return {"user_id": user_id, "message": f"這是第 {user_id} 號使用者的資料"}
神奇的自動型別轉換與驗證:
當你造訪 http://127.0.0.1:8000/users/3,FastAPI 會自動把字串 "3" 轉換成整數 3 傳進函式。
如果你造訪 http://127.0.0.1:8000/users/abc,FastAPI 會直接攔截這個請求,並回傳清楚的錯誤,告訴前端 user_id 必須是一個有效的整數。你完全不需要自己寫 if 判斷式來檢查!