我需要通过 JSON 导出一些大型结构,并取回 JSON 字符串以仅更新它的一些属性。
让我们有以下结构:
type House struct {
Name string `json:"name"`
Rooms int `json:"rooms_count"`
Owner *Owner `json:"-"`
}
对其进行编码encoding/json
将产生一个 JSON 字符串,如
{"name":"some name", "rooms_count":5}
我现在得到这个 JSON 字符串:
{"name":"some other name", "rooms_count":7, Owner:{something...}}
用户想要更改每个属性。Owner
不允许,因为它没有被导出。但我只想只允许rooms_count
. 有没有办法说某些属性应该与 一起导出Encoder
,但不被 使用Decoder
?不得不手动编写所有这些检查将是非常不愉快的。