登录
首页 >  Golang >  Go问答

Golang - 解析嵌套的 JSON

来源:Golang技术栈

时间:2023-03-04 17:42:24 295浏览 收藏

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《Golang - 解析嵌套的 JSON》,就很适合你,本篇文章讲解的知识点主要包括golang。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

问题内容

我正在使用go-worker来处理 resque 工作。一个作业有一个有效负载,它有一个嵌套的 JSON 结构,如下所示:

[{
  "key-a":"val-a",
  "key-b":"val-b",
  "files":[{
    "key-a": [
      {"a":"b","c": "d"},
      {"e":"f","g": "h"}
    ],
    "key-b": [
      {"a":"b","c": "d"},
      {"e":"f","g": "h"}
    ]
  }]
}]

现在go-worker给我args ...interface{}它代表那个 JSON 有效负载,而不是实际的 JSON 文本。有没有一种惯用的方法可以将 that( args) 转换为正确的类型(可以使用另一个包来执行此操作。)手动使用类型断言对于这样的事情似乎有点乏味。

正确答案

如果它真的给你实际的 go 对象(即一堆map[string]interface{}而不是 json 字符串本身),那么除了一堆类型断言之外你可能无能为力。

您可以将其重新编组为 json,然后再次将其解析为正确的结构,但这有点 hack(而且我不知道它是否具有高性能)。

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

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