


Wie kann ich Fehlermeldungen aus der Struct-Tag-Validierung von Gin anpassen?
Anpassen von Fehlermeldungen aus der Struktur-Tag-Validierung
In Gin wird die Struktur-Tag-Validierung verwendet, um die Datenintegrität vor dem Einfügen in die Datenbank sicherzustellen. Der zurückgegebene Standardfehler ist ausführlich und für den Benutzer nicht aussagekräftig. In diesem Artikel wird beschrieben, wie Sie die Fehlermeldung anpassen, um eine aussagekräftigere Antwort bereitzustellen.
Gin verwendet das Paket go-playground/validator/v10 zur Validierung. Fehler werden als validator.ValidationErrors zurückgegeben. Um die Nachricht anzupassen, verwenden Sie das Standardfehlerpaket, um den Fehler zu entpacken und auf die validator.FieldError-Felder zuzugreifen.
Erstellen Sie ein Fehlermodell (z. B. ApiError), um die Struktur Ihrer benutzerdefinierten Fehlermeldung zu definieren. Zum Beispiel:
type ApiError struct { Field string Msg string }
Behandeln Sie den Fehler in Ihrem Handler wie folgt:
var u User err := c.BindQuery(&u); if err != nil { var ve validator.ValidationErrors if errors.As(err, &ve) { out := make([]ApiError, len(ve)) for i, fe := range ve { out[i] = ApiError{fe.Field(), msgForTag(fe.Tag())} } c.JSON(http.StatusBadRequest, gin.H{"errors": out}) } return }
Definieren Sie abschließend eine Hilfsfunktion, um Validierungs-Tags benutzerdefinierten Nachrichten zuzuordnen:
func msgForTag(tag string) string { switch tag { case "required": return "This field is required" case "email": return "Invalid email" } return "" }
Mit diesem Ansatz werden Fehlermeldungen mit dem Feldnamen und einer maßgeschneiderten Nachricht basierend auf dem Validierungs-Tag angepasst.
Das obige ist der detaillierte Inhalt vonWie kann ich Fehlermeldungen aus der Struct-Tag-Validierung von Gin anpassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

GO Language Pack Import: Was ist der Unterschied zwischen Unterstrich und ohne Unterstrich?

Wie kann ich kurzfristige Informationsübertragung zwischen Seiten im BeEGO-Framework implementieren?

Wie konvertieren Sie die Liste der MySQL -Abfrageergebnisse in eine benutzerdefinierte Struktur -Slice in Go -Sprache?

Wie kann ich benutzerdefinierte Typ -Einschränkungen für Generika in Go definieren?

Wie schreibe ich Scheinobjekte und Stubs zum Testen in Go?

Wie schreibe ich Dateien in Go Language bequem?

Wie kann ich Tracing -Tools verwenden, um den Ausführungsfluss meiner GO -Anwendungen zu verstehen?
