相关疑难解决方法(0)

如何不使用Go将空结构编组为JSON?

我有这样的结构:

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包不能封送我的空结构字段?

json go

70
推荐指数
4
解决办法
4万
查看次数

标签 统计

go ×1

json ×1