Global exception handler
API สำหรับอัปเดตสินค้าคงคลังของคุณได้รับการใช้งานมากขึ้นเรื่อย ๆ และผู้ใช้บางส่วนเริ่มบ่นว่า validation error ที่เข้ารหัสในรูปแบบ JSON อ่านยาก มาสร้าง global error handler เพื่อส่งคืน request validation error ในรูปแบบข้อความธรรมดากัน
มีการโหลด exception RequestValidationError ให้คุณแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การ Deploy AI สู่ Production ด้วย FastAPI
คำแนะนำการฝึกหัด
- Import คลาสสำหรับการตอบสนองแบบข้อความธรรมดา
- เพิ่ม annotation ให้
validation_exception_handlerเป็น global exception handler - Return การตอบสนองแบบข้อความธรรมดาสำหรับ validation exception ทุกกรณี
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# 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)