我目前正在将 API 响应提取到结构中。
我可以正常回答说:
[
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
]
但是当我得到这样的数据时:
"urls": [
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
{"date":"2021-10-04","user":"Test","url":"Anonymous"]},
]
我似乎无法将它解析为结构。
这似乎是一个愚蠢的问题,因为它基本上是一样的。
这是我在做什么:
type urls struct {
Urls struct {
Date string `json:"date"`
User string `json:"user"`
Urls string `json:"urls"`
} `json:"urls"`
}
type url []urls
在函数中:
resp, err := http.Get("https://url")
if err != nil {
fmt.Println("No response from request")
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body) // response body is []byte
var u url
_ = json.Unmarshal(body, &u)
不幸的是,这不起作用,你是空的。
通过第一个响应,我可以有一个这样的结构并且它工作正常:
type urls struct {
Date string `json:"date"`
User string `json:"user"`
Urls string `json:"urls"`
}
慕桂英4014372
相关分类