나는이 struct
json.RawMessage를 구조체로 변환하는 적절한 방법은 무엇입니까?
type SyncInfo struct {
Target string
}
가 지금은 ElasticSearch 일부 json
데이터를 쿼리 할 수 있습니다. Source
은 json.RawMessage
입니다. 내가 원하는 것은 source
을 내 SyncInfo
에 매핑하여 mySyncInfo
변수를 생성 한 것입니다.
나는 그것을하는 방법을 알아 냈다. .. 그러나 그것은 별나다. 먼저 MarshalJSON()
을 호출하여 []byte
을 얻은 다음 json.Unmarshal()
에 피드를 입력하고 []byte
과 내 구조체에 대한 포인터를 가져옵니다.
괜찮 으면 작동하지만 마치 여분의 홉을하고있는 것처럼 느껴집니다. 나는 뭔가를 놓치고 있거나 json.RawMessage
에서 struct
으로 갈 방법이 있나?
var mySyncInfo SyncInfo
jsonStr, _ := out.Hits.Hits[0].Source.MarshalJSON()
json.Unmarshal(jsonStr, &mySyncInfo)
fmt.Print(mySyncInfo.Target)
타다! 너는 남자 야! Go :-)와의 첫날. – Christoph
환영합니다 :) 그리고 행복하게 코딩하십시오! – ANisus