簡體   English   中英

去json,封送空值

[英]Go json, marshal empty value

我在omitempty和空值方面遇到問題。 請看這個操場的例子 我有一個值,當值"" ,我不想在元帥期間被忽略。 明確地,這意味着我想清除該值,因此想將結果編組為:

{"cf_objectType":"Product","cf_isLocked":"No","cf_ErrorMessage":""}

現在,我在這里嘗試了指針到字符串的方法,但是由於某種原因,我不喜歡這樣。 有沒有其他選擇? 例如,我們為什么不有一個標簽(就像omitempty等) omitnull什么?

編輯

要澄清,請參閱下文

m := Metadata{
    ObjectType:   "Product",
    Locked:       "No",
    ErrorMessage: "",

}

我希望此結構上的編組函數的結果為:

{
    "cf_objectType":"Product",
    "cf_isLocked":"No",
    "cf_ErrorMessage":""
}

m := Metadata{
    ObjectType:   "Product",
    Locked:       "No",
}

結果應該是:

{
    "cf_objectType":"Product",
    "cf_isLocked":"No",
}

如果您不想省略空值,只需刪除omitempty標簽

https://play.golang.org/p/6axA2OIG6O

關於您的最后評論(我對此沒有足夠的口碑):

好的,這可行play.golang.org/p/TYk67p6i_b但是我在結構定義中混合了字符串和* string。 而且我也不能在沒有var emptyString = ""情況下“填充”值,對嗎?

看到這個(Golang:將nil字符串指針設置為空字符串)帖子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM