Erreurs attendues et inattendues
Distinguez les erreurs attendues visibles par l’utilisateur des erreurs serveur inattendues.
Erreurs attendues et inattendues est une leçon Sveltejs Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Sveltejs Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Sveltejs Academy comprend 4 leçons au total.
Deux catégories
SvelteKit distingue les erreurs attendues, levées intentionnellement, des erreurs inattendues, qui sont des bogues.
Attendues : error()
Appelez error(status, message) pour les cas d’échec connus.
if (!post) error(404, "Post not found");Inattendues : exceptions non interceptées
Toute autre exception est inattendue. Pour des raisons de sécurité, SvelteKit masque le message aux clients.
Pourquoi masquer les messages
Les messages d’erreur inattendus peuvent divulguer des détails de la pile ou de l’implémentation. Afficher un message générique est plus sûr.
handleError
Utilisez handleError dans les intercepteurs pour journaliser les erreurs inattendues et personnaliser le message générique.
Modèle : valider les entrées
Appelez error() lorsque les entrées sont invalides ; laissez les vrais bogues apparaître comme des erreurs inattendues.
Assistant de redirection
redirect() est également intentionnel : utilisez-le pour les pages nécessitant une authentification ou pour les URL déplacées.
Récupération avec try/catch
Encapsulez les appels externes risqués dans try/catch et prévoyez une solution de repli élégante afin d’éviter les pages d’erreur.
Types TypeScript
Le error() de SvelteKit est typé ; il lève une exception, de sorte que le reste de votre code reste accessible après la logique de retour anticipé.
Choix du code d’état
404 pour une ressource introuvable, 401 pour un utilisateur non authentifié, 403 pour un accès interdit et 500 pour les erreurs serveur.
Éviter de lever des erreurs simples
Un throw new Error dans un parcours destiné aux utilisateurs est traité comme une erreur inattendue. Utilisez error() pour une expérience claire.
Vérification rapide
Que fait error(404) différemment de throw new Error ?
Récapitulatif
Utilisez error() pour les échecs intentionnels accompagnés de messages visibles ; laissez les vrais bogues lever des exceptions, puis faites-les journaliser par handleError.
Questions Fréquemment Posées
La leçon « Erreurs attendues et inattendues » est-elle gratuite ?
Oui — le texte complet de « Erreurs attendues et inattendues » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Sveltejs Academy, passe à CoddyKit PRO. Le cours Sveltejs Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Erreurs attendues et inattendues » ?
Distinguez les erreurs attendues visibles par l’utilisateur des erreurs serveur inattendues. Tu pratiques Sveltejs Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Sveltejs Academy ?
Aucune expérience préalable n'est requise. Sveltejs Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Erreurs attendues et inattendues » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Sveltejs Academy ?
Oui. Chaque leçon Sveltejs Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- +error.svelte pour les pages d’erreur personnalisées
- Erreurs attendues et inattendues
- Outils error() et redirect()
- Pages d’erreur dans les mises en page imbriquées