使用場景:在 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中文網其他相關文章!