Как сериализовать/десериализовать JSON?

Junior
1.4k просмотров
AFK Offer AI

json.Marshal(v) превращает структуру в []byte, json.Unmarshal(data, &v) — обратно. Теги управляют маппингом: json:"name,omitempty" — имя поля в JSON и пропуск пустых значений. Неэкспортированные поля (с маленькой буквы) игнорируются. Для потоков (файл, HTTP body) — json.NewEncoder/json.NewDecoder, они эффективнее чем Marshal/Unmarshal для больших данных. Для динамического JSON — map[string]any или json.RawMessage.

Следующий вопрос

Как правильно завершить горутину?