go 這種強類型語言,在 decode json 的時候,通常須要定義一套數據結構用於映射,經常使用的就是 struct,在沒有發現這個工具之前,我都是手寫,遇到一些比較大的 json 時候,第一寫起來比較噁心,第二還容易出錯。git
在這裏推薦一款工具,能夠直接使用 json 生成 struct,十分方便,並且是在線的。github
https://mholt.github.io/json-to-go/json
看個效果圖數據結構
恩,還不錯吧,很方便。架構
可是有一點要注意,若是生成的 struct 有嵌套匿名 struct(就像效果圖裏的那樣),嵌套的匿名 struct 是不能做爲函數返回值的,若是我非要做爲函數返回值該怎麼辦呢?這裏推薦使用這個比較簡單的方案,把匿名的 struct 變成 不匿名的就好了,示例以下。函數
type ( KV struct { K1 string `json:"k1"` K2 int `json:"k2"` K3 K3 `json:"k3"` } K3 struct { K1 int `json:"k1"` K2 string `json:"k2"` } ) func test() (k3 K3) { return }
果真,工具就是生產力。工具
更多架構、PHP、GO相關踩坑實踐技巧請關注個人公衆號:PHP架構師 code