Ho questo struct
Qual è il modo corretto per convertire un json.RawMessage in una struct?
type SyncInfo struct {
Target string
}
Ora mi tua ricerca alcuni dati json
da elasticsearch. Source
è di tipo json.RawMessage
. Tutto quello che voglio è quello di mappare source
al mio SyncInfo
che ho creato la variabile mySyncInfo
per.
Ho persino capito come farlo ... ma sembra strano. Prima chiamo MarshalJSON()
per ottenere un []byte
e poi lo invii a json.Unmarshal()
che prende uno []byte
e un puntatore alla mia struct.
Questo funziona bene ma sembra che sto facendo un salto extra. Mi manca qualcosa o è il modo previsto per passare da json.RawMessage
a struct
?
var mySyncInfo SyncInfo
jsonStr, _ := out.Hits.Hits[0].Source.MarshalJSON()
json.Unmarshal(jsonStr, &mySyncInfo)
fmt.Print(mySyncInfo.Target)
tada! Tu sei l'uomo! È il mio primo giorno con Go ;-) – Christoph
Benvenuto :) E felice Go codifica! – ANisus