Мне нужно создать следующий JSON вывод, используя Go.
{
"id": "zx222",
"links": {
"main_entity": {
"data": [{
"type": "car",
"id": "abc123"
}]
}
}
}
Простым способом генерации вышеупомянутого JSON с помощью маршалинга будет использование следующих типов
type Element struct{
Id string `json:"id"`
Links LinksObject `json:"links"`
}
type LinksObject struct{
MainEntity MainEntityObject `json:"main_entity"`
}
type MainEntityObject struct{
Data []EntityDef `json:"data"`
}
type EntityDef struct{
Type string `json:"type"`
Id string `json:"id"`
}
Есть ли лучший способ генерировать вышеприведенное JSON без определения каждая структура просто чтобы вложить структуру?
Добавление некоторых моих мыслей за вопрос. Исходный JSON имеет дополнительные вложенные уровни из-за того, как сообщения упакованы. Но они не обязательно имеют какое-либо значение, и определение их как типов данных только для декодирования / кодирования в JSON кажется ненужным.