Sto cercando di scrivere un tipo struct in grado di gestire una risposta JSON come questogolang struct per JSON con le chiavi arbitrarie
{"items":
[{"name": "thing",
"image_urls": {
"50x100": [{
"url": "http://site.com/images/1/50x100.jpg",
"width": 50,
"height": 100
}, {
"url": "http://site.com/images/2/50x100.jpg",
"width": 50,
"height": 100
}],
"200x300": [{
"url": "http://site.com/images/1/200x300.jpg",
"width": 200,
"height": 300
}],
"400x520": [{
"url": "http://site.com/images/1/400x520.jpg",
"width": 400,
"height": 520
}]
}
}
Dal momento che le chiavi non sono la stessa cosa ogni volta ... una risposta diversa potrebbe avere più o meno tasti, diversi, e come puoi vedere con il 50x100 restituisci più immagini per una dimensione particolare come posso creare una struttura che corrisponda a questa?
posso fare come:
type ImageURL struct {
Url string
Width, Height int
}
per un singolo elemento, e un elenco di loro per un determinato tasto. Ma come appare la struttura contenente?
Qualcosa di simile:
type Images struct {
50x100 []ImageURL
...
}
type Items struct {
name string
Image_Urls []Images
}
potrebbe funzionare, ma non posso enumerare tutti i possibili risposte dimensioni dell'immagine. Anche che Image_Urls alla fine non c'è davvero una lista. Mi piacerebbe essere in grado di scaricarlo direttamente in json.Unmarshal se possibile.
Oh sì. Ovviamente! Grazie – MichaelB