Open2
GoのAPIでnullや0値になったjsonレスポンスを非表示にしたい
GoでAPIを使用した時に、↓のようなnullが入っている要素を非表示にしたい
{"id":null,"name":null,"address":null,"code":"ERROR"}
type Response struct {
Id float64 `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
Code string `json:"code"`
}
func NewResponse() string {
// ↓このように結果コードのみを渡した場合に、
// {"code":"ERROR"} のように必要のない要素を非表示にしたい
response := Response{Code:"ERROR"}
resBytes, _ := json.Marshal(res)
return string(resBytes)
}
解決策1 structタグを使用
structタグでomitempty
を使用すればゼロ値になった要素は非表示になる
json:"field,omitempty"