我想用golang解析一個(gè)api請(qǐng)求的結(jié)構(gòu),該api返回的結(jié)構(gòu)如下:{"code":200,"message":"xxx","data":{"a":1,"b":"c",...}}golang代碼如下:funcapi()interface{}{resp,err:=http.Get("xxx")iferr!=nil{//}deferresp.Body.Close()body,err:=ioutil.ReadAll(resp.Body)iferr!=nil{//}result:=map[string]interface{}{}json.Unmarshal(body,&result)returnresult}這個(gè)result按理說(shuō)就是最上面描述的那個(gè)結(jié)構(gòu),但是我打印responsecode就必須使用如下方式:resp:=api()result:=resp.(map[string]interface{})fmt.Println(result["code"])可是我想遍歷打印responsedata中的內(nèi)容呢?fork,v:=rangeresult["data"]{fmt.Printf("k=%v,v=%v\n",k,v)}會(huì)報(bào)出如下錯(cuò)誤:cannotrangeoverresult["data"](typeinterface{})感覺(jué)golang解析json好麻煩.
golang解析api返回的json結(jié)構(gòu)問(wèn)題
冉冉說(shuō)
2019-04-21 20:14:03