gpt4 book ai didi

json - 用于结构的 Golang JSON - 错误消息

转载 作者:IT王子 更新时间:2023-10-29 02:23:58 25 4
gpt4 key购买 nike

我是 Golang 的新手,我正在尝试在发生错误时将值解析为我的 ErrorMessage 结构。

我有这个结构:

type ErrorMessage struct {
Errors []struct {
Code string `json:"code"`
Message string `json:"message"`
Field string `json:"field,omitempty"`
} `json:"errors"`
Meta struct {
Status string `json:"status"`
} `json:"meta"`
}

映射为显示 JSON,如下所示:

{
"errors": [
{
"code": "short-code",
"message": "Wow, such bad!"
},
{
"code": "other-code",
"message": "OMG, very error!",
"field": "This is the field"
}
],
"meta": {
"status": "error"
}
}

但是我不知道如何将 Controller 中的值解析到这个结构中。对于一个基本的结构,我理解并且有这样的东西:e := models.ErrorMessage{"错误", "404", "字段缺失"}

如何使用与上面类似的行来处理更复杂的结构?

最佳答案

如果将 ErrorMeta 从内联结构中分离到预定义的结构类型中,它会变得非常简单:

type Error struct {
Code string `json:"code"`
Message string `json:"message"`
Field string `json:"field,omitempty"`
}

type Meta struct {
Status string `json:"status"`
}

type ErrorMessage struct {
Errors []Error `json:"errors"`
Meta Meta `json:"meta"`
}

msg := ErrorMessage {
Errors: []Error{
{Code: "f00", Message: "bar", Field: "wat"},
},
Meta: Meta{"WAT"},
}

关于json - 用于结构的 Golang JSON - 错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30234736/

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