我无法解决如何解组来自以前解组的 json 字节数组的原始 json 字符串的问题。我有当前的代码:
type Message struct {
Event string
Data json.RawMessage // how data is parsed depends on the event
}
type CreateMessage struct {
id int
}
var evt = []byte(`{"event": "create", "data" :{"id":5 }}`)
func main() {
var message Message
log.Println(string(evt))
json.Unmarshal(evt, &message)
log.Println(message)
log.Println(message.Event)
log.Println(string(message.Data))
fmt.Printf("%+v\n", message)
var message2 = new(CreateMessage)
err := json.Unmarshal( message.Data, &message2 )
log.Println(message2)
log.Println(err)
}
输出是:
2015/06/29 23:22:10 {"event": "create", "data" :{"id":5 }}
2015/06/29 23:22:10 {create [123 34 105 100 34 58 53 32 125]}
2015/06/29 23:22:10 create
2015/06/29 23:22:10 {"id":5 }
{Event:create Data:[123 34 105 100 34 58 53 32 125]}
2015/06/29 23:22:10 &{0}
2015/06/29 23:22:10 <nil>
为什么我不能将数据解组为CreateMessage对象?我在这里和这里尝试了这个例子,但他们没有解组嵌套的原始 json 数据,这正是我想要做的。
慕尼黑的夜晚无繁华
qq_花开花谢_0
随时随地看视频慕课网APP
相关分类