go的http请求模块

自带的 net/http 模块

resp, _ := http.Get("http://127.0.0.1:8080/task/")
body2, _ := ioutil.ReadAll(resp.Body)  // body2数据类型 []uint8
body3 := string(body2)
1. json字符串转map
var dat map[string]interface{}
if err := json.Unmarshal([]byte(body3), &dat); err == nil {
    fmt.Println("==============json str 转map=======================")
    fmt.Println(dat)
}
2. json字符串转struct
type Tasks struct {
    Tasks []Task `json:"Tasks"`
}
type Task struct {
    ID    int64
    Title string
    Done  bool
}
var tasks Tasks
if err := json.Unmarshal([]byte(body3), &tasks); err == nil {
    fmt.Println("================json str 转struct==")
    fmt.Println(tasks)
    fmt.Println(tasks.Tasks[0].Title)
}

你可能感兴趣的:(go的http请求模块)