go - 为什么 Golang http 参数 (URL.Query()) 是列表的映射?

标签 go

当我们打电话

r.URL.Query()

在 Go 中的 http 路由处理程序中,它返回一个 map[string][]string。我想知道为什么它是一个列表,以及我是否可以在发送请求时以某种方式使用此属性。

最佳答案

它是一个列表,因为它允许在 URL 中发送相同查询字符串参数的多个副本,是的,您可以在请求中发送查询字符串参数。

例如对于像 http://example.com/?foo=1&foo=2 这样的 URL,Query() 会返回:

{"foo": ["1","2"]}

关于go - 为什么 Golang http 参数 (URL.Query()) 是列表的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50682810/

相关文章:

go - Go 中如何将字节数组转换为字符串数组?

go - Go 中的可选参数?

go - 单个 go 项目使用的 go 包的正确文件夹结构

go - 寻找一种优雅的方式来解析整数

go - 返回接口(interface)的函数

function - 我可以为每个被调用的函数提供函数 ID 并与之通信吗?

go - Go程序"Import cycle not allowed"错误

concurrency - 使用并发的 Golang 流水线

unicode - Go 中 unicode 中 IsDigit 和 IsNumber 的区别

mysql - 在 golang 的 time.time 中从 mysql 检索日期时间