I post a request to a server and get a reply in JSON format. I\'m able to unmarshal it to a struct. Then I need to create a new JSON file with the same data but different JS
It's not possible. The encoding/json package only handles the json
key in struct tags. If the json
key is listed multiple times (as in your example), the first occurrence will be used (this is implemented in StructTag.Get()).
Note that this is an implementation restriction of the encoding/json
package and not that of Go. One could easily create a similar JSON encoding package supporting either multiple tag keys (e.g. json1
, json2
) or multiple occurrences of the same key (as in your example).