I have a JSON structure such as:
{
"persons":[
{
"name":"mark",
"surname":"zuckerberg",
"data":[
{
"userid":"09210",
"username":"mark290",
"registered_date":"10-01-2017"
},
{
"userid":"092240",
"username":"mark291",
"registered_date":"11-01-2017"
}
]
},
{
"name":"bill",
"surname":"clinton",
"data":[
{
"userid":"0442340",
"username":"billy",
"registered_date":"10-01-2000"
},
{
"userid":"89472894",
"username":"billary",
"registered_date":"11-01-2015"
}
]
}
]
}
I need to fetch each username for each person. Currently, in Go, which I am a total newbie at, I can get only the single JSONS within "data", with this snippet:
j := []byte(data)
var f interface{}
err := json.Unmarshal(j, &f)
map := f.(map[string]interface{})
for _,item := range map["persons"].([]interface{}) {
fmt.Printf("%v", item.(map[string]interface{})["data"])
fmt.Println(err)
I struggle to understand how to dive within each JSON struct within data in order to get each key,value pair.