登录
首页 >  Golang >  Go问答

制作JSON动态化的方法

来源:stackoverflow

时间:2024-03-02 10:27:24 478浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《制作JSON动态化的方法》,这篇文章主要讲到等等知识,如果你对Golang相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

问题内容

假设 json 最初看起来像:

jsondata := {
  "type": "text",
  "contents": []
}

我想使用循环以便在运行时将下面的 json 附加到 jsondatacontents 字段:

{
      "type": "bubble",
      "hero": {
        "size": "full"
      },
      "body": {
        "spacing": "sm",
        "contents": [
          {
            "size": "xl"
          },
          {
            "type": "box",
            "contents": [
              {
                "flex": 0
              },
              {
                "flex": 0
              }
            ]
          }
        ]
      },
      "footer": {
        "spacing": "sm",
        "contents": [
          {
            "type": "button",
            "action": {
              "type": "uri"
            }
          },
          {
            "type": "button",
            "action": {
              "type": "uri"
            }
          }
        ]
      }
    },

最终输出如下:

jsonData := {
      "type": "text",
      "contents": [{......},{.......}]
    }

解决方案


Go 是一种静态类型语言,与 Javascript(JSON 中的 JS 代表)不同。 这意味着每个变量在编译时都必须有指定的类型,这不太符合 JSON 的工作方式。

但是 Go 提供了一个内置的 json 包来简化这个过程。

您应该了解在 Go 中使用 JSON 的 3 件事,并且您可以推进更多...

  1. Go 切片转换为 JSON 数组 ([]interface{})
  2. Go 地图转换为 JSON 对象 (map[string]interface{})
  3. json 软件包可以完成这一切(json.Marshaljson.Unmarshal

我发现如果您阅读这篇文章,您可以了解事物的工作原理:

https://www.sohamkamani.com/blog/2017/10/18/parsing-json-in-golang/
https://blog.golang.org/json-and-go

终于介绍完啦!小伙伴们,这篇关于《制作JSON动态化的方法》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>