使用 Go 向本地主机服务器发出 GET http 请求时出现空响应

我的本地主机服务器正在运行,它只是 docker 中的容器进程。我正在尝试实现 Go CLIENT 来构建用于创建、列出、更新、删除功能的 REST api。当我尝试点击 URL 时,程序成功退出但给我一个空响应。我进一步观察到,响应类型被“分块”,内容长度为 -1。我是 Go 的新手,并试图找出可能的原因是什么,或者任何人都可以为这个问题提供解决方案。这是我的代码 - {


 package main


import (

    "encoding/json"

    "fmt"

    "io/ioutil"

    "net/http"

)


type Payload struct {

    Stuff Data

}


type Data struct {

    Id              string

    Links           Links_container

    Actions         Actions_container

    AccountID       string

    AgentID         string

    AllocationState string

    Compute         string

    Created         string

}


type Links_container map[string]string

type Actions_container map[string]string


func main() {

    url := "http://localhost:8080/v1/containers"

    res, err := http.Get(url)

    if err != nil {

        fmt.Println(err)

    }

    defer res.Body.Close()

    body, err := ioutil.ReadAll(res.Body)

    if err != nil {

        fmt.Println(err)

    }


    var p Payload


    err = json.Unmarshal(body, &p)

    if err != nil {

        panic(err)

    }


    fmt.Println(p.Stuff.AccountID, "\n", p.Stuff.Actions, "\n",

        p.Stuff.AgentID, "\n", p.Stuff.AllocationState, "\n", p.Stuff.Compute,

        "\n", p.Stuff.Created, "\n", p.Stuff.Id, "\n", p.Stuff.Links)

}

}




千万里不及你
浏览 328回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go