编写我的第一个 Go 应用程序我正在学习进行基本的 api 调用并解析 json 响应。我很确定我没有正确投射我的类型,我的回应是
false
0
0
0
0 false
0
如果我创建一些包含数据的数组,我可以获得该响应,但是当我将这个更复杂的 json 响应添加到混合中时,事情会变得更加混乱,这让我非常肯定我没有正确投射。
这是我在玩弄并更改内容以破坏内容并尝试解决问题之后的当前代码。
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
type Payload struct {
results Data
}
type Data struct {
poster_path string
adult bool
overview string
release_date string
genre_ids int
id int
original_title string
original_language string
title string
backdrop_path string
popularity float64
vote_count int
video bool
vote_average float64
}
type poster_path map[string]string
type adult map[string]bool
type overview map[string]string
type release_date map[string]string
type genre_ids map[string]int
type id map[string]int
type original_title map[string]string
type original_language map[string]string
type title map[string]string
type backdrop_path map[string]string
type popularity map[string]float64
type vote_count map[string]int
type video map[string]bool
type vote_average map[string]float64
func main() {
// http://image.tmdb.org/t/p/w185
url := "https://api.themoviedb.org/3/movie/top_rated?api_key=####APIKEYHERE######"
res, err := http.Get(url)
if err != nil {
panic(err)
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
panic(err)
}
var p Payload
err = json.Unmarshal(body, &p)
if err != nil {
panic(err)
}
}
一些让我印象深刻的事情,
当我尝试投射浮点数时,我对投射 from float32to感到困惑float64
肥皂起泡泡
犯罪嫌疑人X
相关分类