我有这样的结构:
type Result struct {
Data MyStruct `json:"data,omitempty"`
Status string `json:"status,omitempty"`
Reason string `json:"reason,omitempty"`
}
Run Code Online (Sandbox Code Playgroud)
但即使MyStruct的实例完全为空(意味着所有值都是默认值),它也被序列化为:
"data":{}
Run Code Online (Sandbox Code Playgroud)
我知道encoding/json docs指定"empty"字段是:
false,0,任何nil指针或接口值,以及长度为零的任何数组,切片,映射或字符串
但没有考虑具有所有空/默认值的结构.它的所有字段也都标有omitempty,但这没有效果.
如何让JSON包不能封送我的空结构字段?