Heim >Backend-Entwicklung >Golang >Wie gehe ich mit JSON-Schlüsseln mit Leerzeichen in Go um?
Unmarshalling von JSON mit Schlüsselnamen, die Leerzeichen enthalten
Beim JSON-Deserialisierungsprozess können beim Umgang mit JSON-Daten, die Schlüsselnamen enthalten, Schwierigkeiten auftreten mit Leerzeichen. Dieses Problem tritt auf, wenn die Standardbibliothek „Encoding/JSON“ in Go verwendet wird. Die Bibliothek hat Schwierigkeiten, Schlüssel mit Leerzeichen zu interpretieren, während sie versucht, JSON-Felder Strukturfeldern zuzuordnen.
Um dieses Problem zu beheben, stellen Sie sicher, dass die JSON-Tag-Spezifikation korrekt ist. Das JSON-Tag ordnet JSON-Feldnamen Strukturfeldnamen zu. Wenn in der JSON-Tag-Spezifikation nach dem Doppelpunkt, aber vor dem Anführungszeichen ein Leerzeichen erscheint, kann die Bibliothek das JSON-Feld nicht ordnungsgemäß dem Strukturfeld zuordnen.
Bedenken Sie den folgenden Beispielcode:
type Animal struct { Name string `json:"Na me"` Order string `json:"Order,omitempty"` }
In diesem Beispiel wird das JSON-Tag für das Feld „Name“ fälschlicherweise mit einem Leerzeichen nach dem Doppelpunkt angegeben. Um das Problem zu beheben, entfernen Sie das Leerzeichen und geben Sie das Tag wie folgt an:
type Animal struct { Name string `json:"Name"` Order string `json:"Order,omitempty"` }
Mit dieser Änderung kann die JSON-Bibliothek die JSON-Feldnamen erfolgreich den Strukturfeldnamen zuordnen, auch wenn die Feldnamen enthalten Räume. Dadurch wird sichergestellt, dass die Strukturfelder ordnungsgemäß mit Werten aus den JSON-Daten gefüllt werden.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit JSON-Schlüsseln mit Leerzeichen in Go um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!