原始json数组字符串

[{"addition_links": {"build_history": {"absolute": false,"href": "/api/v2.0/projects/test/repositories/zhangxueliang%252Fmyapp/artifacts/sha256:5f4afc8302ade316fc47c99ee1d41f8ba94dbe7e3e7747dd87215a15429b9102/additions/build_history"}},"digest": "sha256:5f4afc8302ade316fc47c99ee1d41f8ba94dbe7e3e7747dd87215a15429b9102","extra_attrs": {"architecture": "amd64","author": null,"created": "2018-02-25T06:04:41.923389438Z","os": "linux"},"id": 176,"labels": null,"manifest_media_type": "application/vnd.docker.distribution.manifest.v2+json","media_type": "application/vnd.docker.container.image.v1+json","project_id": 7,"pull_time": "2021-12-17T01:59:08.570Z","push_time": "2021-01-06T01:58:10.546Z","references": null,"repository_id": 110,"size": 6755615,"tags": [{"artifact_id": 176,"id": 199,"immutable": false,"name": "v2","pull_time": "2021-12-17T01:59:08.570Z","push_time": "2021-01-06T01:58:10.568Z","repository_id": 110,"signed": false}],"type": "IMAGE"},{"addition_links": {"build_history": {"absolute": false,"href": "/api/v2.0/projects/test/repositories/zhangxueliang%252Fmyapp/artifacts/sha256:9eeca44ba2d410e54fccc54cbe9c021802aa8b9836a0bcf3d3229354e4c8870e/additions/build_history"}},"digest": "sha256:9eeca44ba2d410e54fccc54cbe9c021802aa8b9836a0bcf3d3229354e4c8870e","extra_attrs": {"architecture": "amd64","author": "MageEdu <mage@magedu.com>","created": "2018-03-02T03:39:41.482586301Z","os": "linux"},"id": 175,"labels": null,"manifest_media_type": "application/vnd.docker.distribution.manifest.v2+json","media_type": "application/vnd.docker.container.image.v1+json","project_id": 7,"pull_time": "2021-12-17T01:59:08.502Z","push_time": "2021-01-06T01:58:09.419Z","references": null,"repository_id": 110,"size": 6757253,"tags": [{"artifact_id": 175,"id": 198,"immutable": false,"name": "v1","pull_time": "2021-12-17T01:59:08.502Z","push_time": "2021-01-06T01:58:09.437Z","repository_id": 110,"signed": false}],"type": "IMAGE"}
]

go代码

package mainimport ("encoding/json""fmt""io/ioutil""net/http""time"simplejson "github.com/bitly/go-simplejson"
)func main() {// 使用%252F转义"/"url := "http://192.168.111.xxx:8603/api/v2.0/projects/test/repositories/zhangxueliang%252Fmyapp/artifacts"resp, err := http.Get(url)if err != nil {fmt.Println("报错了")return}body, _ := ioutil.ReadAll(resp.Body)var rr []map[string]interface{}json.Unmarshal(body, &rr)for _, v := range rr {b, _ := json.Marshal(v)sj, err := simplejson.NewJson(b)if err != nil {panic(err)}tags, err := sj.Get("tags").Array()fmt.Println(tags)}
}

结果

解析出name字段

// fmt.Println(tags)for _, value := range tags {tagname, _ := value.(map[string]interface{})fmt.Println(tagname["name"])}


如果不进行断言判断,就会报错:

可参考链接:
https://studygolang.com/articles/345

go解析复杂json数组字符串:结合使用json和simple-json库相关推荐

  1. json数组字符串转list集合

    在json数组里,除了可以表示数值外,字符串也是其中重要的一个组成.在数组中字符串和以前所学的内容相差不多,我们可以把模块的内容继承过来.那么如果想把json数组字符串转换成list集合,有八种不同的 ...

  2. java写json数组字符串,Java将前端的json数组字符串转换为列表

    记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表. 前端数据转化与请求 var contracts = [ {id: '1', name: 'yanggb合同1'}, {i ...

  3. JS/Jquery遍历JSON对象、JSON数组、JSON数组字符串、JSON对象字符串

    JS遍历JSON对象 JSON对象 var jsonObj = {"id": 102,"year": "2019-2020","l ...

  4. JSON数组字符串取值方法

    import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson ...

  5. Go使用simple-json解析json数组字符串:以Harbor获取镜像tag为例

    package mainimport ("encoding/json""fmt""io/ioutil""net/http" ...

  6. mysql json数组字符串转数组_数组、对象、字符串转JSON的函数

    很多时候从服务器传过来的json文本比较复杂,下面的函数可以把数组,String,Object转为JSON格式的内容. JSON = { encode : function(input) { if ( ...

  7. c语言遍历json数组,如何使用c动态获取所有json元素?

    json.net库中的jtoken对象非常有用,您可以访问json对象和数组,而不需要一组复杂的域模型类.当我必须访问复杂对象图的一些独立属性时,我使用它.我不想为了访问几个属性而定义一大堆样板类. ...

  8. JSON数组形式字符串转换为Map数组

    String strArr = "[{\"deptName\":\"面雕科\",\"deptCode\":\"001\& ...

  9. 学会Hive解析Json数组

    在Hive中会有很多数据是用Json格式来存储的,如开发人员对APP上的页面进行埋点时,会将多个字段存放在一个json数组中,因此数据平台调用数据时,要对埋点数据进行解析.接下来就聊聊Hive中是如何 ...

最新文章

  1. 推荐一位玩自动化的 Python 爱好者
  2. 解数独(Python)
  3. 无法加载站点/服务的所有 ISAPI 筛选器,因此启动中止——Service Unavailable解决方法合集...
  4. 实习成长之路:MySQL七:事务到底是隔离的还是不隔离的?
  5. 纽微特记事:刚内斗胜利,就说业务难做
  6. mysql实战27 | 主库出问题了,从库怎么办?
  7. Android 自定义万能的抽屉布局(侧滑菜单)GenericDrawerLayout
  8. java毕业设计宠物领养饲养交流管理平台Mybatis+系统+数据库+调试部署
  9. 训练集和测试集的产生方法
  10. PS基础入门(二、快速选择工具和魔棒的使用)
  11. 树莓派 无线网卡服务器,树莓派(Raspberry Pi)USB无线网卡配置方法
  12. 英语知识(与字面意思 相反的) Corner office
  13. win10去掉快捷方式小箭头_快捷方式小箭头很烦人 一招教你取消
  14. 大三开学,百度面试感受
  15. 我被湖北省钟祥市H36463五路公汽拒…
  16. scrapy爬虫并保存数据库
  17. 如何快速拆分PDF文件(照片快速转换成pdf)
  18. 猫喜欢吃鱼,可猫不会游泳
  19. 【计算机网络期末复习资料1】
  20. 中科创达C++ 一面(技术面、24min、offer)

热门文章

  1. 大油井隐藏的箱子_魔兽世界:历经版本变迁的5大隐藏boss!全部都经历过的才是大神...
  2. c语言课本第八章答案,c语言第八章字符串编程答案
  3. c++17(33)-数值上下限、无穷、非数、中文字符串
  4. 嵌入式笔录(4)-LC并联电路选频和AM解调
  5. 【CV】基于OpenCV的手掌检测和手指计数
  6. 【机器学习】太强了!这个建模神器可以玩一辈子
  7. 【深度学习】深度学习经典数据集汇总
  8. 【算法知识】详解选择排序算法
  9. “远程银行”优秀厂商认证!网易云信入选《区域性银行数字化厂商全景报告》...
  10. 活动 | 5G万物智联下互联网通信技术升级之路