golang http requests post 多维数组 form-data

go里post请求怎么传多维数组,
form-data格式

就像php里的

$arr = ["name" => ["lisa","danny"]];

go里面怎么实现?

form := make(map[string][]string)
form["name"] = []string{"lisa","danny"}
阅读 13.7k
3 个回答

是的,你可以这么做。

不过 net/url 库里面已经定义了一个 Values 类型,实际上就是你写的 map[string][]string,你可以直接赋值一个 []string 也可以遍历你的 []string 并使用 Values 的 Add 方法

v := make(url.Values)
values := []string{"one", "two"}

// 这样
v["test"] = values
// 还有这样
for _, value := range values {
    v.Add("test", value)
}
// 都可以
func GetOrderInfosByStuId(stuIds []string)([]byte, error)  {
    //form := url.Values{"ddd":stuIds}
    form := url.Values{"ddd":{"xscs","dsds"}}

    for _,v := range []string{"xsxs","dedwd"}{
        form.Add("www",v)
    }
    return util.Curl("POST", conf.UrlGetOrderInfosByStuId, []byte(form.Encode()))
}

图片描述

建议map[string]interface{}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题