1 回答

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個贊
就好像您將完全刪除無效標(biāo)簽一樣:
type req struct {
Name string
}
引自json.Marhsal():
結(jié)構(gòu)值編碼為 JSON 對象。每個導(dǎo)出的結(jié)構(gòu)字段都成為對象的成員,使用字段名稱作為對象鍵,除非由于以下原因之一省略了該字段。
如果標(biāo)簽無效,則視為無標(biāo)簽,默認(rèn)使用字段名稱。
go vet報(bào)告不遵循以下“約定”的標(biāo)簽reflect.StructTag:
按照慣例,標(biāo)簽字符串是可選用空格分隔的鍵:“值”對的串聯(lián)。每個鍵都是一個非空字符串,由除空格 (U+0020 ' ')、引號 (U+0022 '"') 和冒號 (U+003A ':') 以外的非控制字符組成。每個值都被引用使用 U+0022 '"' 字符和 Go 字符串文字語法。
在Go Playground(也可以運(yùn)行g(shù)o vet)上運(yùn)行它:
./prog.go:9:2: struct field tag `json:name"` not compatible with reflect.StructTag.Get: bad syntax for struct tag value
Go vet exited.
{"Name":"john"} <nil>
- 1 回答
- 0 關(guān)注
- 536 瀏覽
添加回答
舉報(bào)