Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana Mengendalikan 404 Respons dengan Halaman Tersuai dalam FastAPI?

Bagaimana Mengendalikan 404 Respons dengan Halaman Tersuai dalam FastAPI?

Patricia Arquette
Patricia Arquetteasal
2024-10-24 02:08:29867semak imbas

How to Handle 404 Responses with Custom Pages in FastAPI?

Mengendalikan 404 Respons dengan Halaman Tersuai dalam FastAPI

Pengenalan

FastAPI ialah rangka kerja web popular untuk Python yang menyediakan cara yang bersih dan cekap untuk membina API. Satu keperluan biasa apabila bekerja dengan aplikasi web ialah keupayaan untuk menyesuaikan respons yang dikembalikan apabila sumber yang diminta tidak ditemui (404 Tidak Ditemui). Artikel ini akan membimbing anda melalui proses mencipta halaman 404 tersuai menggunakan FastAPI.

Menggunakan Pengendali Respons Tersuai

Satu pendekatan untuk mengendalikan respons 404 ialah menggunakan pengendali pengecualian tersuai. FastAPI membolehkan anda mendaftarkan pengendali pengecualian tersuai yang boleh memintas dan mengendalikan pengecualian tertentu. Dalam kes kami, kami boleh mencipta pengendali pengecualian untuk kod status 404 dan mengembalikan respons tersuai.

Berikut ialah contoh cara mencipta pengendali respons 404 tersuai:

<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>

Menggunakan Middleware

Satu lagi pilihan untuk mengendalikan 404 respons ialah menggunakan middleware. Middlewares ialah fungsi yang dijalankan sebelum dan selepas setiap kitaran permintaan-tindak balas. Dalam kes kami, kami boleh menggunakan perisian tengah untuk menyemak 404 respons dan mengembalikan respons tersuai.

Berikut ialah contoh cara mencipta perisian tengah untuk mengendalikan respons 404:

<code class="python">from fastapi import Request, Response, status
from fastapi.responses import HTMLResponse

@app.middleware(&quot;http&quot;)
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>

Nota: Adalah penting untuk ambil perhatian bahawa jika anda menggunakan kedua-dua pengendali respons tersuai dan perisian tengah untuk mengendalikan respons 404, perisian tengah akan diutamakan.

Kesimpulan

Memperibadikan 404 respons dalam FastAPI ialah proses mudah yang boleh dicapai sama ada menggunakan pengendali respons tersuai atau perisian tengah. Dengan mengikuti teknik yang diterangkan dalam artikel ini, anda boleh membuat halaman 404 tersuai yang memberikan pengalaman yang lebih bermaklumat dan mesra pengguna.

Atas ialah kandungan terperinci Bagaimana Mengendalikan 404 Respons dengan Halaman Tersuai dalam FastAPI?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn