首页 >后端开发 >Golang >如何向结构未知的 JSON 字符串添加'count”键?

如何向结构未知的 JSON 字符串添加'count”键?

DDD
DDD原创
2024-12-08 15:35:13543浏览

How Can I Add a

使用未知结构解码 JSON

尝试修改未知结构的 JSON 字符串时会出现问题。目标是向现有 JSON 添加“count”键:

原始 JSON:

{ "votes": { "option_A": "3" } }

所需 JSON:

{ "votes": { "option_A": "3" }, "count": "1" }

挑战在于JSON 结构的可变性,使得使用具有预定值的传统 JSON 解码器变得不切实际

解决方案:解组为映射

为了克服这一挑战,一种实用的方法是将 JSON 解组为字符串到接口的映射:

var raw map[string]interface{}
json.Unmarshal(in, &raw)

这允许基于键值对 JSON 数据进行操作。在这种情况下,可以添加新的“count”键:

raw["count"] = 1

要生成所需的 JSON 字符串,修改后的映射将重新编组为 JSON 字符串:

out, err := json.Marshal(raw)

As结果,可以修改未知的 JSON 结构,并可以根据需要添加“count”键。

以上是如何向结构未知的 JSON 字符串添加'count”键?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn