为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 golang 中访问映射值

如何在 golang 中访问映射值

Go
慕婉清6462132 2022-08-15 16:59:41
当我执行请求时,它会发送如下内容。POSTraw-dataproducts%5B%22producs-1%22%5D%5B%22pink%22%5D%3D1%26products%5B%22products-2%22%5D%5B%22black%22%5D%3D2%26products%5B%22products-3%22%5D%5B%22green%22%5D%3D2%27当我做URL ParseQuery时,它会显示如下输出:    body, err := ioutil.ReadAll(r.Body)    if err != nil {        panic(err)    }    fmt.Println(string(body))    params, _ := url.ParseQuery(string(body))    fmt.Println(params)map[products["products-1"]["black"]:[2] products["products-2"]["green"]:[2] products["products-3"]["pink"]:[1]]我想访问产品-1,黑色,2(其他字段),我该怎么做?
查看完整描述

2 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

这是一种相当奇怪的格式,看起来它期待一个PHP脚本。或者其他一些脚本语言。

ParseQuery 函数制作了一个映射,但关键是一个字符串,看起来像“products[”products-2“][”green“]”

我认为最好有一个包含“属性”映射或类似内容的“产品”映射。我不知道如何在没有很多努力的情况下到达那里


查看完整回答
反对 回复 2022-08-15
?
回首忆惘然

TA贡献1847条经验 获得超11个赞

尝试按键循环以获取什么是键:


  for k, v := range params { 

    fmt.Printf("key[%s] value[%s]\n", k, v)

  }


查看完整回答
反对 回复 2022-08-15
  • 2 回答
  • 0 关注
  • 78 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号