我正在寻找的等效于Document.parse()
在golang中,这允许我直接从json创建bson吗?我不想创建用于编组的中间Go结构
该gopkg.in/mgo.v2/bson程序包有一个名为的函数UnmarshalJSON,它可以完全满足您的需求。
gopkg.in/mgo.v2/bson
UnmarshalJSON
该data参数应包含JSON字符串作为[]byte值。
data
[]byte
func UnmarshalJSON(data []byte, value interface{}) error
UnmarshalJSON解组一个JSON值,该值可能包含BSON扩展JSON规范中定义的非标准语法。
例:
var bdoc interface{} err = bson.UnmarshalJSON([]byte(`{"id": 1,"name": "A green door","price": 12.50,"tags": ["home", "green"]}`),&bdoc) if err != nil { panic(err) } err = c.Insert(&bdoc) if err != nil { panic(err) }