推荐一款工具可以把 json 转成 go 的 struct


声明:本文转载自https://my.oschina.net/u/222608/blog/2236006,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

go 这种强类型语言,在 decode json 的时候,一般需要定义一套数据结构用于映射,常用的就是 struct,在没有发现这个工具以前,我都是手写,遇到一些比较大的 json 时候,第一写起来比较恶心,第二还容易出错。

在这里推荐一款工具,可以直接使用 json 生成 struct,十分方便,而且是在线的。

https://mholt.github.io/json-to-go/

看个效果图

恩,还不错吧,很方便。

但是有一点要注意,如果生成的 struct 有嵌套匿名 struct(就像效果图里的那样),嵌套的匿名 struct 是不能作为函数返回值的,如果我非要作为函数返回值该怎么办呢?这里推荐使用这个比较简单的方案,把匿名的 struct 变成 不匿名的就行了,示例如下。

type (
    KV struct {
        K1 string `json:"k1"`
        K2 int `json:"k2"`
        K3 K3 `json:"k3"`
    }
    K3 struct {
        K1 int `json:"k1"`
        K2 string `json:"k2"`
    }
)
func test() (k3 K3) {
    return
}

果然,工具就是生产力。

更多架构、PHP、GO相关踩坑实践技巧请关注我的公众号:PHP架构师

本文发表于2018年10月09日 11:00
(c)注:本文转载自https://my.oschina.net/u/222608/blog/2236006,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1528 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1