Maison > développement back-end > Golang > le corps du texte

Comment gérer des erreurs spécifiques dans Go ?

Patricia Arquette
Libérer: 2024-11-09 21:20:02
original
776 Les gens l'ont consulté

How to Handle Specific Errors in Go?

Gestion des erreurs spécifiques dans Go

Dans Go, la gestion des erreurs est cruciale pour gérer les situations inattendues. Lorsque vous travaillez avec des fonctions de bibliothèque standard, il est souvent nécessaire de détecter des erreurs spécifiques pour effectuer des actions personnalisées.

Utilisation des erreurs.Est et des erreurs.As fonctions

Pour les erreurs enveloppées à l'aide erreurs.Est et erreurs.En tant que fonctions, vous pouvez vérifier directement l'erreur spécifique :

client, err := rpc.Dial("tcp", ":1234")  
if errors.Is(err, syscall.ECONNREFUSED) {
  // Connection refused error
}
Copier après la connexion

Retour : comparaison de chaînes des chaînes d'erreur

Pour les erreurs non enveloppées avec erreurs.Est et erreurs.As, vous pouvez recourir à la comparaison de la chaîne d'erreur :

if err.Error() == "connection lost" { ... }
Copier après la connexion

Vérification des erreurs basée sur le type

Dans les cas où la bibliothèque fournit des types d'erreurs, vous pouvez vérifier le type de l'erreur :

if _, ok := err.(net.Error); ok {
    // Network error handling logic
}
Copier après la connexion

Récupération des erreurs de bibliothèque standard

Pour obtenir une liste d'erreurs qu'une fonction de bibliothèque standard peut renvoyer, vous pouvez reportez-vous à la documentation de la bibliothèque. Le site Web godoc fournit des informations détaillées sur les types d'erreurs. De plus, l'examen du code source peut vous donner une liste exhaustive des erreurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal