Avatar ·

json.Marshal(struct) retourne un JSON vide "{}" : comment corriger ?

Bonjour à tous ! Je suis débutant en Go et j'ai rencontré un problème étrange en travaillant avec JSON. J'ai une structure, je la remplis avec des données, j'essaie de la sérialiser en JSON avec `json.Marshal()`, mais je n'obtiens que des accolades vides `{}`. Voici mon code : ```go package main import ( "encoding/json" "fmt" ) type User struct { Name string Age int } func main() { u := User{"Alice", 30} result, err := json.Marshal(u) if err != nil { fmt.Println("Error:", err) return } fmt.Println(string(result)) // Affiche : {} } ``` Je m'attendais à voir `{"Name":"Alice","Age":30}`, mais je ne vois que `{}`. Il n'y a pas d'erreur, mais les données sont perdues. Qu'est-ce que je fais de travers ? J'ai vérifié que la structure est bien remplie — si j'affiche les champs avec `fmt.Println(u.Name, u.Age)`, ils