gpt4 book ai didi

mongodb - 使用 golang 从 mongo 获取一段 json 字符串

转载 作者:数据小太阳 更新时间:2023-10-29 03:40:15 24 4
gpt4 key购买 nike

我正在尝试使用 golang 中的以下代码从 mongo 获取一段 json 文本

var a []string
err := col..Find(nil).Select(bson.M{"_id": 0}).All(&a)

我得到错误 Unsupported document type for unmarshalling: string

我可以知道这样做的正确方法吗?

最佳答案

当您选择除 _id 之外的所有内容时,返回的将是一个仅包含剩余字段的文档。你可以这样做:

type fieldDoc struct {
Field string `bson:"name"`
}
var a []fieldDoc
err := col.Find(nil).Select(bson.M{"_id": 0}).All(&a)

如果你不知道底层结构:

var a []bson.M
err := col.Find(nil).Select(bson.M{"_id": 0}).All(&a)

那应该给你编码为 bson 对象的文档。那是一个 map[string]interface{},所以如果您想要 json 输出,您应该能够将它编码为 JSON:

jsonDocs, err:=json.Marshal(a)

关于mongodb - 使用 golang 从 mongo 获取一段 json 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57977119/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com