gpt4 book ai didi

json - 使用 GO 返回一个结构数组作为 Json 响应

转载 作者:数据小太阳 更新时间:2023-10-29 03:28:56 26 4
gpt4 key购买 nike

我正在 GO 中构建一个 REST api,我能够从服务器获取 JSON 响应。我期待将 JSON 响应存储在某种容器(数组)中并从函数返回该结构。我的数据结构定义如下 -{

type Payload struct {
Stuff []Data `json:"data"` // holds the JSON response returned
}

type Container struct {
container []Payload
}

type ListContainersResponse struct {
Data []Container // want this thing to be returned from the function
}


func (client *Client) ListContainers() (ListContainersResponse, error) {
// fetches the JSON response
var p Payload

// XYZ is something of the type ListContainersResponse which needs to be returned
return XYZ
}

遍历 p 得到了我的 JSON 结构,我想将它附加到一个 Data[] 容器,该容器可以保存这个返回的 JSON 响应并从函数返回。我试着玩弄它,但有一些异常(exception)。有人可以帮我解决这个问题吗?

谢谢,我通过做这样的事情让我的代码工作{

var result ListContainersResponse
var temp Container
temp.container = append(temp.container, p)
result.Data = append(result.Data, temp)

最佳答案

假设您已经将 JSON 解码为 Payload p 的一个实例。

func (client *Client) ListContainers() (ListContainersResponse, error) {
// fetches the JSON response
var p Payload

XYZ := ListContainersResponse {
Data: []Container {
container: []Payload {
{p},
},
},
}

// XYZ is something of the type ListContainersResponse which needs to be returned
return XYZ
}

此外,如果其他人感兴趣,这里是我将 JSON 放入结构中的方法:

var p Payload
decoder := json.NewDecoder(r.Body)
err := decoder.Decode(&p)

其中 rhttp.Request 类型。我希望 json 字符串看起来像:

{
"data": [...]
}

关于json - 使用 GO 返回一个结构数组作为 Json 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27004910/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com