Go json转struct工具_r_martian的博客-CSDN博客_go json struct

一个很好用的工具集合的web页面,包含常用的json、base64、url、hash、加密等,最重要的是页面简洁干净。

名称为OKTools,地址如下:
https://oktools.net/json2go

这里说一下个人比较喜欢的一个工具,go语言的json转struct,当然我们也可以自己写一个,不过还是不要重复造轮子了。
https://oktools.net/json2go

例证说明

json
格式化json工具,https://www.json.cn/
非常好用,不过是有广告的
{
    "error":0,
    "data":{
        "roll_data":[
            {
                "author_extends":"",
                "depth_extends":"[]",
                "deny_comment":0,
                "level":"B",
                "reading_num":25782,
                "content":"国家统计局发布2020年国民经济和社会发展统计公报:初步核算,全年国内生产总值1015986亿元,比上年增长2.3%。",
                "in_roll":1,
                "recommend":1,
                "confirmed":0,
                "jpush":0,
                "img":"",
                "user_id":87,
                "is_top":0,
                "brief":"国家统计局发布2020年国民经济和社会发展统计公报:初步核算,全年国内生产总值1015986亿元,比上年增长2.3%。",
                "id":693665,
                "ctime":1614476012,
                "type":-1,
                "title":"",
                "bold":0,
                "sort_score":1614476012,
                "comment_num":0,
                "modified_time":1614476012,
                "status":1,
                "collection":0,
                "has_img":0,
                "category":"",
                "shareurl":"https://api3.cls.cn/share/article/693665?os=web&sv=7.5.5&app=CailianpressWeb",
                "share_img":"https://image.cailianpress.com/share/roll.png",
                "share_num":0,
                "sub_titles":[

                ],
                "tags":[

                ],
                "imgs":[

                ],
                "images":[

                ],
                "explain_num":-1,
                "stock_list":[

                ],
                "is_ad":0,
                "ad":{
                    "id":0,
                    "title":"",
                    "img":"",
                    "url":"",
                    "monitorUrl":"",
                    "video_url":"",
                    "adTag":"",
                    "fullScreen":0
                },
                "subjects":null,
                "audio_url":[
                    "https://image.cailianpress.com/admin/20210228/093332av5ywufInPHj.mp3",
                    "https://image.cailianpress.com/admin/20210228/09333257pbHtoN9BII.mp3",
                    "https://image.cailianpress.com/admin/20210228/093332azbk0F9ExN2P.mp3"
                ],
                "author":""
            }
        ],
        "update_num":1
    },
    "vipData":[

    ]
}
转换后的struct结构
type AutoGenerated struct {
    Error int `json:"error"`
    Data Data `json:"data"`
    VipData []interface{} `json:"vipData"`
}
type Ad struct {
    ID int `json:"id"`
    Title string `json:"title"`
    Img string `json:"img"`
    URL string `json:"url"`
    MonitorURL string `json:"monitorUrl"`
    VideoURL string `json:"video_url"`
    AdTag string `json:"adTag"`
    FullScreen int `json:"fullScreen"`
}
type RollData struct {
    AuthorExtends string `json:"author_extends"`
    DepthExtends string `json:"depth_extends"`
    DenyComment int `json:"deny_comment"`
    Level string `json:"level"`
    ReadingNum int `json:"reading_num"`
    Content string `json:"content"`
    InRoll int `json:"in_roll"`
    Recommend int `json:"recommend"`
    Confirmed int `json:"confirmed"`
    Jpush int `json:"jpush"`
    Img string `json:"img"`
    UserID int `json:"user_id"`
    IsTop int `json:"is_top"`
    Brief string `json:"brief"`
    ID int `json:"id"`
    Ctime int `json:"ctime"`
    Type int `json:"type"`
    Title string `json:"title"`
    Bold int `json:"bold"`
    SortScore int `json:"sort_score"`
    CommentNum int `json:"comment_num"`
    ModifiedTime int `json:"modified_time"`
    Status int `json:"status"`
    Collection int `json:"collection"`
    HasImg int `json:"has_img"`
    Category string `json:"category"`
    Shareurl string `json:"shareurl"`
    ShareImg string `json:"share_img"`
    ShareNum int `json:"share_num"`
    SubTitles []interface{} `json:"sub_titles"`
    Tags []interface{} `json:"tags"`
    Imgs []interface{} `json:"imgs"`
    Images []interface{} `json:"images"`
    ExplainNum int `json:"explain_num"`
    StockList []interface{} `json:"stock_list"`
    IsAd int `json:"is_ad"`
    Ad Ad `json:"ad"`
    Subjects interface{} `json:"subjects"`
    AudioURL []string `json:"audio_url"`
    Author string `json:"author"`
}
type Data struct {
    RollData []RollData `json:"roll_data"`
    UpdateNum int `json:"update_num"`
}
只需要微调一下一些结构体的名称,将其语义化即可,非常方便。

原网址: 访问
创建于: 2022-09-04 20:33:24
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论