繁体   English   中英

直接从mgo结果流到json,而无需反序列化go中的结构

[英]Stream straight from mgo result to json without unserializing to struct in go

有没有一种方法可以直接从mgo结果转换为JSON字节数组,而不必先序列化为一部分结构?

将结果解码为interface{} interface{}编码为JSON。

var v interface{}
if err := c.Find(query).One(&v); err != nil {
   // handle error
}
p, err := json.Marshal(v)
if err != nil {
   // handle error
}

// p is []byte containing the JSON

根据文档的方法One()执行查询并将第一个获得的文档解组到result参数中 ,因此无论如何都在进行元帅,但是我们可以使用json.RawMessage类型“欺骗”它,这只是其中的一部分个字节,它在std库中。

var result json.RawMessage

if err := c.Find(query).One(&result); err != nil { ... }

有一个完整的例子这里大约RawMessage。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM