Registrare funzioni errorhandler
Personalizzi le risposte per 404 e 500.
Registrare funzioni errorhandler è una lezione Flask Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Flask Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Flask Academy include 4 lezioni in totale.
Oltre la pagina predefinita
Flask mostra una semplice pagina di errore predefinita. Può sostituirla registrando il proprio errorhandler per qualsiasi codice di stato.
Il decoratore errorhandler
Associa una funzione a un codice tramite un decoratore. Questo gestore viene eseguito ogni volta che si verifica quell'error in qualsiasi punto dell'applicazione.
@app.errorhandler(404)
def not_found(e):
return "Nothing here", 404Restituire una tupla
Un gestore restituisce un corpo e un codice di stato, proprio come una view. Lo status code mantiene la risposta coerente con ciò che è fallito.
return "Not found", 404L'argomento error
Ogni gestore riceve l'oggetto errore come argomento. Può leggerne la descrizione o il codice per personalizzare la risposta.
def not_found(e):
return str(e.description), 404Gestire gli errori 500
Gli arresti anomali imprevisti diventano un errore 500. Registri un gestore per mostrare agli utenti un messaggio chiaro invece di una traccia dello stack grezza.
@app.errorhandler(500)
def boom(e):
return "Server error", 500Eseguire invece il rendering di un template
La maggior parte delle app restituisce una pagina formattata in caso di errore. Nel gestore chiami semplicemente render_template e passi anche il codice di stato.
return render_template("404.html"), 404Restituire JSON per le API
Un'API dovrebbe rispondere agli errori in JSON, non in HTML. Usi jsonify affinché i client possano analizzare l'errore in modo chiaro.
return jsonify(error="Not found"), 404I gestori intercettano anche abort
Chiamare abort con un codice attiva il gestore corrispondente. Quindi un solo errorhandler gestisce sia gli arresti anomali sia i suoi abort personalizzati.
Gestire le classi di eccezione
Può registrare un gestore in base al tipo di eccezione, non solo al numero. Passi una classe di eccezione per intercettare un'intera famiglia in una volta sola.
@app.errorhandler(ValueError)
def bad(e):
return "Bad value", 400A livello di app o blueprint
I gestori definiti su app si applicano ovunque, mentre un blueprint può limitarne l'ambito al proprio contesto. In questo modo ogni parte di un'applicazione complessa può gestire gli errori a modo suo.
Perché usare gestori personalizzati
Pagine di errore coerenti mantengono uniforme il brand e ordinata l'API. Un handler centrale consente di correggere il messaggio in un unico punto.
Verifica rapida
Individui il decoratore che personalizza la risposta per una pagina mancante.
Riepilogo
Ora sa registrare funzioni errorhandler, leggere l'oggetto errore e restituire HTML o JSON con il codice corretto. Ottimi progressi!
Domande Frequenti
La lezione «Registrare funzioni errorhandler» è gratuita?
Sì — il testo completo di «Registrare funzioni errorhandler» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Flask Academy, passa a CoddyKit PRO. Il corso Flask Academy include 4 lezioni in totale.
Cosa imparerò in «Registrare funzioni errorhandler»?
Personalizzi le risposte per 404 e 500. Eserciti Flask Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Flask Academy?
Non è richiesta alcuna esperienza precedente. Flask Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Registrare funzioni errorhandler»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Flask Academy?
Sì. Ogni lezione Flask Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- abort e codici di errore HTTP
- Registrare funzioni errorhandler
- Sollevare classi di eccezioni personalizzate
- Envelope di errore JSON uniformi