无法将 json 数据解组为 go 中的结构(无法将数组解组为 Go 结构字段)

我正在使用 API 接收来自某个组织的所有招聘广告,我收到的 JSON 数据非常大,我想在 Go 中使用这些数据,但是我在解组到结构时遇到了问题,因此我可以进一步使用它。这可能是一个非常简单的解决方案,对我来说是盲目的,因为我这个问题引起了一些头痛。代码中的 API 密钥是公开的,因此与 Stackoverflow 共享它没有问题。


代码:


package main


import (

    "encoding/json"

    "fmt"

    "io/ioutil"

    "log"

    "net/http"

)


type JsonData struct {

    Content JsonContent `json:"content"`

    TotalElements int `json:"totalElements"`

    PageNumber int `json:"pageNumber"`

    PageSize int `json:"pageSize"`

    TotalPages int `json:"totalPages"`

    First bool `json:"first"`

    Last bool `json:"last"`

    Sort string `json:"sort"`

}

type JsonContent struct {

    Uuid string `json:"uuid"`

    Published string `json:"published"`

    Expires string `json:"expires"`

    Updated string `json:"updated"`

    WorkLoc WorkLocations `json:"workLocations"`

    Title string `json:"title"`

    Description string `json:"description"`

    SourceUrl string `json:"sourceurl"`

    Source string `json:"source"`

    ApplicationDue string `json:"applicationDue"`

    OccupationCat OccupationCategories `json:"occupationCategories"`

    JobTitle string `json:"jobtitle"`

    Link string `json:"link"`

    Employ Employer `json:"employer"`

    EngagementType string `json:"engagementtype"`

    Extent string `json:"extent"`

    StartTime string `json:"starttime"`

    PositionCount interface{} `json:"positioncount"`

    Sector string `json:"sector"`

}

type WorkLocations struct {

    Country string `json:"country"`

    Address string `json:"address"`

    City string `json:"city"`

    PostalCode string `json:"postalCode"`

    County string `json:"county"`

    Municipal string `json:"municipal"`

}

type OccupationCategories struct {

    Level1 string `json:"level1"`

    Level2 string `json:"level2"`

}

type Employer struct {

    Name string `json:"name"`

    Orgnr string `json:"orgnr"`

    Description string `json:"description"`

    Homepage interface{} `json:"homepage"`

}





青春有我
浏览 178回答 1
1回答

忽然笑

解决方案已经被“zerkms”、“tclass”这两个可爱的人找到了。您声称 Content JsonContentjson:"content"是 JsonContent,而它是它们的数组,因此 []JsonContent正如您在示例 json 中看到的,内容字段实际上是一个数组。在你的 go 结构中它不是。您必须将结构更改为 Content []JsonContent json:"content"非常感谢你们!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go