Heim > Artikel > Backend-Entwicklung > Warum gibt mein Go-HTTP-Server keine JSON-Daten zurück?
Erstellen von HTTP-Antworten mit JSON
Bei dieser Frage stieß der Autor auf Schwierigkeiten bei der Erstellung von JSON-Antworten von seinem Go-HTTP-Server. Beim Vergleich mit einem Arbeitsbeispiel waren sie von den offensichtlichen Ähnlichkeiten in ihrem Code verblüfft.
Der Kern des Problems liegt im Unterschied zwischen öffentlichen und nicht exportierten Variablen in Go-Strukturen. Das Arbeitsbeispiel verwendete öffentliche (exportierte) Feldnamen, wie zum Beispiel:
type Profile struct { Name string Hobbies []string }
Im Gegensatz dazu enthielt die Struktur des Autors nicht exportierte (Kleinbuchstaben-)Feldnamen:
type ResponseCommands struct { key string value bool }
Beim Marshalling nicht exportierter Felder zu JSON, der Encoder ignoriert sie. Folglich enthielt die benutzerdefinierte JSON-Antwort des Autors keine Daten. Um dieses Problem zu beheben, sollten sie sicherstellen, dass ihre Strukturfeldnamen exportiert (großgeschrieben) werden, um eine ordnungsgemäße JSON-Darstellung sicherzustellen.
Das obige ist der detaillierte Inhalt vonWarum gibt mein Go-HTTP-Server keine JSON-Daten zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!