Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Membuat Halaman Tersuai 404 Tidak Ditemui dalam FastAPI?

Bagaimana untuk Membuat Halaman Tersuai 404 Tidak Ditemui dalam FastAPI?

Patricia Arquette
Patricia Arquetteasal
2024-10-24 04:46:011005semak imbas

How to Create a Custom 404 Not Found Page in FastAPI?

Halaman 404 Tidak Ditemui Tersuai dengan FastAPI

Untuk mencipta halaman 404 Not Found tersuai, FastAPI menawarkan beberapa pendekatan. Kaedah yang sesuai bergantung pada keperluan khusus anda.

Ubah hala pada Kod Status 404


@app.middleware("http")
async def redirect_on_not_found(request: Request, call_next):

response = await call_next(request)
if response.status_code == 404:
    return RedirectResponse("https://fastapi.tiangolo.com")
else:
    return response

Middleware ini menyemak kod status respons dan mengubah hala ke halaman tersuai jika kod ialah 404.

Pengendali Pengecualian Tersuai untuk 404

<br>@app.exception_handler(404)<br>asyncrequest_def_not_found : Permintaan, kecuali: HTTPException):</p>
<pre class="brush:php;toolbar:false">return RedirectResponse('https://fastapi.tiangolo.com')

Pengendali pengecualian tersuai boleh dibuat khusus untuk kod status 404. Ini membolehkan respons yang lebih khusus dan disasarkan.

Halaman Ralat Tersuai Menggunakan Templat

FastAPI menyokong penggunaan templat untuk memaparkan halaman ralat tersuai. Contoh ini mencipta dua halaman ralat:

<br>templat = Jinja2Templates(directory='templates')</p>
<p>exception_handlers = {</p>
<pre class="brush:php;toolbar:false">404: not_found_error,
500: internal_error

}

app = FastAPI(exception_handlers=exception_handlers)

Templat terletak dalam direktori 'templat' dan boleh disesuaikan mengikut keperluan anda.

Dengan memilih kaedah yang paling sesuai dengan aplikasi anda, anda boleh membuat halaman 404 Not Found tersuai dalam FastAPI.

Atas ialah kandungan terperinci Bagaimana untuk Membuat Halaman Tersuai 404 Tidak Ditemui 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
Artikel sebelumnya:Senarai Semak Penganalisis DataArtikel seterusnya:Senarai Semak Penganalisis Data