golang的json解析需要先定义json结构体,不像PHP的一个json_decode就可以解析出来,这点就很烦了,简单的json解析还好。
比如:
type Account struct {
Email string `json:"email"`
Password string `json:"password"`
Money float64 `json:"money"`
}
var jsonString string = `{
"email":"jishi@gmail.com",
"password":"123456",
"money":100.5
}`
func main() {
account := Account{}
err := json.Unmarshal([]byte(jsonString), &account)
if err != nil{
log.Fatalln(err)
}
fmt.Printf("%+v\n", account)
}
解析结果:
{Email:jishi@gmail.com Password:123456 Money:100.5}
这样我们就可以直接解析出来了。但如果josn对象很复杂的话,结构体写起来也是很麻烦的。但有了这个神器之后就不怕写结构体了,
https://mholt.github.io/json-to-go/
界面是这样的:
只要在左边填入你要解析的json,右边就会显示出对应的json结构体,不过产生的json结构体可能是有些错误的需要手动去修改,但比自己写可是轻松多了。
json解析完成之后就可以以.操作符取我们想要的字段了。