I was mainly looking at un-marshalling the below JSON array in golang.
{
"status":{"code":"SUCCESS"},
"result": {
"total_records":1,
"records": [{
"last_modified_timestamp":1501209015807,
"dns_servers":null,
"is_secured":false,
"nis_domains":null,
"storage_platform_resource_key":"e1ee32f9-6576-11e7-82a8-00a098697714",
"name":"vs1",
"nis_servers":null,
"created_timestamp":1501208944094,
"dns_domains":null,
"key":"f59dacca-7379-11e7-82a8-00a098697714"
}]
}
}
I am looking to extract the "key" field here. Tried the below syntax but not able to successfully get what i want.
var dat map[string]interface{}
// Unmarshall the JSON body
if err := json.Unmarshal(body, &dat); err != nil {
fmt.Println(err)
}
svmRecordsMap := dat["result"].(map[string]interface{})["records"]
fmt.Printf("%+v", svmRecordsMap)
result := (svmRecordsMap["key"].([]interface{})[0]).(map[string]interface{})
Any help here would be very much appreciated. Note that i am not looking at defining corresponding structs and making a copy.
Thanks!