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

解析 JSON 对象的 JSON 数组?

解析 JSON 对象的 JSON 数组?

Go
海绵宝宝撒 2021-09-27 14:24:41
我试图从 JSON 数组中获取每个 JSON 对象。我通过 HTTP 帖子获取这些数据。我知道我的数据会是什么样子:   {    "array":[       {          "entity_title":"University of Phoenix",           "entity_org_name":"CS Club",          "possible_user_name":"Johnny Ive",          "posibble_user_email":"Johhny.Ive@uop.edu",          "user_position_title":"President",          "msg_body_id":4       },      {          "entity_title":"University of San Francisco",           "entity_org_name":"Marketing club",          "possible_user_name":"steve jobs",          "posibble_user_email":"steven.job@uop.edu",          "user_position_title":"Student",          "msg_body_id":5      }    ]  }我的示例代码和结构如下所示:    type MsgCreateUserArray struct {         CreateUser []MsgCreateUserJson `json:"createUserArray"`    }    type MsgCreateUserJson struct {        EntityTitleName string  `json:"entity_title_name"`        EntityOrgName   string  `json:"entity_org_name"`        PossibleUserName string `json:"possible_user_name"`        PossibleUserEmail   string  `json:"possible_user_email"`        UserPositionTitle   string  `json:"user_position_title"`        MsgBodyId       string  `json:"msg_body_id, omitempty"`     }func parseJson(rw http.ResponseWriter, request *http.Request) {    decodeJson := json.NewDecoder(request.Body)    var msg MsgCreateUserArray    err := decodeJson.Decode(&msg)    if err != nil {        panic(err)    }    log.Println(msg.CreateUser)}func main() {    http.HandleFunc("/", parseJson)    http.ListenAndServe(":1337", nil)}我不确定如何遍历 JSON 数组并获取 JSON 对象,然后只使用 JSON 对象。
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

试试这个作为你的结构,


type MsgCreateUserArray struct {

    CreateUser []MsgCreateUserJson `json:"array"`

}


type MsgCreateUserJson struct {

    EntityOrgName     string  `json:"entity_org_name"`

    EntityTitle       string  `json:"entity_title"`

    MsgBodyID         int64   `json:"msg_body_id,omitempty"`

    PosibbleUserEmail string  `json:"posibble_user_email"`

    PossibleUserName  string  `json:"possible_user_name"`

    UserPositionTitle string  `json:"user_position_title"`

}

您的entity_title_name名称不正确,顶级array. 解码成 a 后,MsgCreateUserArray您可以遍历CreateUser切片以获取每个MsgCreateUserJson


查看完整回答
反对 回复 2021-09-27
  • 1 回答
  • 0 关注
  • 159 浏览
慕课专栏
更多

添加回答

举报

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