全域例外處理器
你用來更新存貨的 API 使用量變高了,一些使用者開始抱怨以 JSON 編碼的驗證錯誤很難閱讀。讓我們建立一個全域錯誤處理器,把請求的驗證錯誤改為純文字回傳。
RequestValidationError 例外已為你預先載入。
本練習屬於課程
使用 FastAPI 將 AI 佈署到生產環境
練習說明
- 匯入用於純文字回應的類別。
- 將
validation_exception_handler標註為全域例外處理器。 - 對任何驗證例外回傳純文字回應。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Import class for plain text response
from fastapi.responses import ____
app = FastAPI()
# Create global exception handler
@app.____(RequestValidationError)
async def validation_exception_handler(request, exc):
# Return plain text response
return ____(str(exc), status_code=400)