У меня есть объект JSON, детали которого могут содержать различные типы объектов JSON, остальная часть JSON остается неизменной, в таком случае, как я могу иметь одну структуру в Golang для обработки обоих типов JSON
JSON 1:
{
"field1":"",
"field2":"",
"field3":"",
"field4":"",
"field5":"",
"field6":"",
"field7":"",
"details":{
"detail1":"",
"detail2":[
{
"arr1":"",
"arr2":{
"id":"",
"name":""
},
"list":[
{
"id":"",
"version":1,
"name":""
}
]
}
]
},
"user":{
"id":"",
"name":""
}
}
JSON 2:
{
"field1":"",
"field2":"",
"field3":"",
"field4":"",
"field5":"",
"field6":"",
"field7":"",
"details":{
"anotherdetail1":"",
"anotherdetail2":[
{
"arr7":"",
"arr8":{
"id":"",
"name":""
},
"arr10":{
}
}
]
},
"user":{
"id":"",
"name":""
}
}
Моя цель - использовать одну структуру для обоих этих JSONобъекты.В таком языке, как Java, я создал бы Родительский класс, который напоминает детали в общем виде и имел бы 2 дочерних класса, чтобы напоминать тип деталей, которые меняются, и во время выполнения я бы создал объект дочернего типа и назначил его Родителю.Я не уверен, как это делается в Go.