为了账号安全,请及时绑定邮箱和手机立即绑定

戈朗尝试解封物体阵列

戈朗尝试解封物体阵列

Go
BIG阳 2022-09-12 21:15:40
您好,我试图取消marshax字段中数组的值,但尝试返回空数组,我不知道原因。任何人都可以帮我吗?代码如下:package mainimport (    "fmt"    "encoding/json")func main() {    fmt.Println("Hello, playground")    type order struct {        Uid             string              `json:"uid"`        Name            string              `json:"name"`                State           string              `json:"state"`    }    type Root struct {    q []order    }    s := `{"q":[{"uid":"0x4ecb99b9","name":"Brandon Test Order","state":"draft"}]}`    var r Root    ero := json.Unmarshal([]byte(s), &r)    if ero != nil {        fmt.Println("error order")        fmt.Println(ero)    }    fmt.Println("order")    fmt.Println(r.q)    return}这是输出结果Hello, playgroundorder[]
查看完整描述

2 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

看起来您的结构和 Json 标记不匹配。请使用以下重构的代码。你可以在这里找到关于游乐场的工作片段。此外,订单必须导出。


    

     type order struct {

        Uid   string `json:"uid"`

        Name  string `json:"name"`

        State string `json:"state"`

    }


    type Root struct {

        Orders []order `json:"q"`

    }


查看完整回答
反对 回复 2022-09-12
?
喵喔喔

TA贡献1735条经验 获得超5个赞

试试这个结构


type GetOrder struct {

    Orders []struct {

        Uid       string `json:"uid"`

        Name      string `json:"name"`

        State     string `json:"state"`

    } `json:"q"`

}


查看完整回答
反对 回复 2022-09-12
  • 2 回答
  • 0 关注
  • 71 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信