Image de l'article Gestion des erreurs dans NodeJS

13. Gestion des erreurs dans NodeJS

Page 81 | Écouter en audio

La gestion des erreurs dans NodeJS est une compétence essentielle pour tout développeur. Des erreurs peuvent survenir dans n'importe quelle application, que ce soit en raison d'un problème dans le code, d'un problème avec les données d'entrée ou d'un problème avec l'environnement d'exécution. Par conséquent, il est crucial que votre application puisse gérer les erreurs de manière élégante et informative.

Dans NodeJS, les erreurs sont représentées par des objets d'erreur. Un objet d'erreur est créé à l'aide du mot-clé « new » suivi du nom « Error ». Par exemple : 'nouvelle erreur('Ceci est une erreur')'. Cet objet d'erreur peut ensuite être lancé à l'aide du mot-clé 'throw'. Par exemple : 'lancer une nouvelle erreur('Ceci est une erreur')'.

Une fois qu'une erreur a été générée, elle peut être détectée et gérée à l'aide d'un bloc 'try/catch'. Le bloc « try » contient du code qui peut générer une erreur, tandis que le bloc « catch » contient du code qui gère l'erreur. Par exemple :

essayer { throw new Error('Ceci est une erreur'); } attraper (erreur) { console.erreur(erreur.message); }

Le code ci-dessus affichera « Ceci est une erreur » sur la console. Notez que l'objet d'erreur est transmis au bloc 'catch' sous le nom 'err' et que le message d'erreur est accessible sous le nom 'err.message'.

En plus du message d'erreur, l'objet d'erreur contient également une propriété « pile » qui fournit une trace de pile de l'erreur. La trace de pile est une liste de fonctions qui ont été appelées, dans l'ordre, jusqu'au point où l'erreur a été générée. Cela peut être extrêmement utile pour déboguer les erreurs.

Dans NodeJS, il existe plusieurs classes d'erreurs intégrées que vous pouvez utiliser pour représenter différents types d'erreurs. Par exemple, « RangeError » peut être utilisé pour représenter une erreur qui se produit lorsqu'une valeur est en dehors de la plage de valeurs acceptables, et « TypeError » peut être utilisé pour représenter une erreur qui se produit lorsqu'une valeur n'est pas du type attendu. Chacune de ces classes d'erreur possède son propre message d'erreur par défaut, mais vous pouvez également fournir votre propre message d'erreur.

En plus d'utiliser les classes d'erreurs intégrées, vous pouvez également créer vos propres classes d'erreurs personnalisées. Cela peut être utile si vous souhaitez représenter des erreurs spécifiques à votre application. Pour créer une classe d'erreur personnalisée, vous pouvez étendre la classe « Erreur ». Par exemple :

la classe CustomError étend l'erreur { constructeur (message) { super(message); this.name = 'CustomError'; } }

Vous pouvez ensuite lancer et intercepter 'CustomError' comme vous le feriez pour n'importe quelle autre erreur.

Une autre chose importante à noter concernant la gestion des erreurs dans NodeJS est que les erreurs non détectées entraîneront l'arrêt du processus NodeJS. Cela signifie que si une erreur est générée et n'est pas détectée par un bloc « try/catch », votre application échouera. Pour éviter cela, vous pouvez ajouter un gestionnaire d'événements « uncaughtException » à l'objet « process ». Ce gestionnaire d'événements sera appelé chaque fois qu'une erreur non détectée est générée. Par exemple :

process.on('uncaughtException', (err) => { console.error('Erreur non détectée :', err); });

Cela imprimera le message d'erreur et la trace de la pile sur la console, mais n'empêchera pas le processus de se terminer. Si vous souhaitez que votre application continue de s'exécuter même après une erreur non détectée, vous pouvez ajouter « process.exit(1) » à la fin du gestionnaire d'événements. Cependant, cela doit être fait avec précaution car cela peut entraîner un état d'application incohérent.

En résumé, la gestion des erreurs dans NodeJS se fait en lançant et en interceptant des objets d'erreur. NodeJS fournit plusieurs classes d'erreurs intégrées que vous pouvez utiliser, mais vous pouvez également créer vos propres classes d'erreurs personnalisées. Les erreurs non détectées entraîneront l'arrêt du processus NodeJS à moins qu'un gestionnaire d'événements « uncaughtException » ne soit ajouté à l'objet « processus ».

Répondez maintenant à l’exercice sur le contenu :

Comment se fait la gestion des erreurs dans NodeJS ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Image de l'article Introduction à MongoDB

Page suivante de lebook gratuit :

82Introduction à MongoDB

3 minutes

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte