gpt4 book ai didi

json - 在 golang 中解码顶级 json 对象

转载 作者:IT王子 更新时间:2023-10-29 01:59:45 25 4
gpt4 key购买 nike

我正在尝试在 golang 中解析一个节点 package.json 文件,我有以下结构:

type packageJson struct {
scripts map[string]interface{} `json:"scripts"`
dependencies map[string]interface{} `json:"dependencies"`
devDependencies map[string]interface{} `json:"devDependencies"`
}

...

var content packageJson
if err := json.Unmarshal(b, &content); err != nil {
return err
}

当我解析包文件时,结构没有被填充(虽然没有收到错误)。我怀疑这是因为内容本身就是一个对象(即:{ "scripts":"...", ... })并且 Unmarshal 方法想要将其转换为 映射[字符串]接口(interface){}。有什么建议可以解决这个“问题”吗?我尝试创建一个包装器结构并使用 jpath 但无济于事。谢谢!

注意:我可以这样做

var content map[string]interface{}
...
if val, ok := content["scripts"]; !ok { ... }

但我想尽可能避免它。

最佳答案

您应该公开结构字段。

关于json - 在 golang 中解码顶级 json 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26678993/

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