使用场景:在 go 中给 API 调用者响应 json 数据。
1. 有些字段不暴露给用户。
2. 有些字段是根据用户的级别控制是否有这些数据。
Id字段不暴露给用户,则使用 `json:"-"` 修饰。
Inputs、Outputs 在某些情况下不返回字段数据。
(1)、使用 `json:"omitempty"`(当字段为空时忽略此字段) 修饰字段;
(2)、当不需要该字段返回时,让其赋值为空即可。
golang json隐藏某个字段的方法示例:
如下的结构体,格式化为json时我想忽略DataSource字段
type RealTimeData struct { Code string `json:"code"` Time time.Time `json:"time"` OpenPrice float32 `json:"openPrice"` PrevClosePrice float32 `json:"prevClosePrice"` LastPrice float32 `json:"lastPrice"` HighPrice float32 `json:"highPrice"` LowPrice float32 `json:"lowPrice"` MarketValue float32 `json:"marketValue"` PER float32 `json:"per"` // static price/earning ration PBR float32 `json:"pbr"` // price/book ration DataSource string}
如下所示,将其指定为"-"
DataSource string `json:"-"`
更多golang知识请关注go语言教程栏目。
以上是golang json怎么隐藏某个字段的详细内容。更多信息请关注PHP中文网其他相关文章!