在FastAPI 中使用自訂頁面處理404 回應
簡介
FastAPI 是一個受歡迎的簡介Python Web 框架,它提供了建構API 的乾淨高效的方法。使用 Web 應用程式時的常見要求是能夠自訂在找不到請求的資源(404 Not Found)時傳回的回應。本文將引導您完成使用 FastAPI 建立自訂 404 頁面的過程。
使用自訂回應處理程序
處理 404 回應的一種方法是使用自訂異常處理程序。 FastAPI 可讓您註冊可以攔截和處理特定例外狀況的自訂例外處理程序。在我們的例子中,我們可以為 404 狀態代碼建立一個異常處理程序並傳回自訂回應。<code class="python">from fastapi.exceptions import HTTPException from fastapi.responses import HTMLResponse @app.exception_handler(404) async def not_found_handler(request: Request, exc: HTTPException): return HTMLResponse("<h1>Not Found</h1><p>The requested resource could not be found.</p>", status_code=404)</code>
以下是如何建立自訂404 回應處理程序的範例:
使用中間件
處理404 回應的另一個選項是使用中間件。中間件是在每個請求-回應週期之前和之後運行的函數。在我們的例子中,我們可以使用中間件來檢查 404 回應並傳回自訂回應。<code class="python">from fastapi import Request, Response, status from fastapi.responses import HTMLResponse @app.middleware("http") async def handle_404(request: Request, call_next): response = await call_next(request) if response.status_code == status.HTTP_404_NOT_FOUND: return HTMLResponse("<h1>Not Found</h1><p>The requested resource could not be found.</p>") return response</code>
以下是如何建立中間件來處理404 回應的範例:
注意:需要注意的是,如果您同時使用自訂回應處理程序和中間件來處理404 響應,則中間件將優先。
結論
在 FastAPI 中自訂 404 回應是一個簡單的過程,可以使用自訂回應處理程序或中介軟體來實現。透過遵循本文中描述的技術,您可以建立自訂 404 頁面,以提供資訊更豐富且使用者友好的體驗。以上是如何在 FastAPI 中使用自訂頁面處理 404 回應?的詳細內容。更多資訊請關注PHP中文網其他相關文章!