将新的键值对添加到JSON对象

Bif*_*iff 1 json go

我正在连接到一个提供相当大的json负载的API。我需要向根对象添加键和值。一旦ioutil.Readall从“ net / http”包中执行操作,JSON就是一个字节数组。

我的目标是仅添加到结构中并继续前进。例如,以下内容与我正在执行的操作非常相似:https : //tutorialedge.net/golang/using-restful-api-with-go/

那么如何简单地将另一个元素(键:值)添加到JSON结构中呢?

And*_*eig 5

如果您要做的只是向根对象添加键和值并生成新的JSON,并且您不关心将数据放入结构中,则可以将其解编为map[string]interface{},添加您的值,然后再次编组:

var m map[string]interface{}
err := json.Unmarshal(data, &m)
m["new_key"] = newValue
newData, err := json.Marshal(m)
Run Code Online (Sandbox Code Playgroud)

(我不检查错误,但是您当然应该这样做。)有关如何在Go中处理JSON的更多信息,请参见https://golang.org/pkg/encoding/json/