当您在 Golang 中创建 funcHandler 并使用 Gorilla Mux 时,我知道您可以通过调用 Mux.Vars 来访问特定的输入变量。但是,当您以 JSON 格式存储数据时,我不确定它是如何工作的,部分原因是我不确定 Mux.Vars() 是如何工作的。所以,我想知道如何在输入 funcHandler 时列出 Mux.Vars() 存储的所有变量,以及如何解析存储在 URL 中的 JSON(即/data?name="bill"&value="red",我想在其中找到名称和值键的值)。
最佳答案
列出所有的 Gorilla Mux:
for k, v := range mux.Vars(request) {
log.Printf("key=%v, value=%v", k, v)
}
Vars
函数返回一个map
,for range
循环可帮助您阅读我向您展示的所有项目。
但我认为你的问题有点不同,如果你想读取随请求发送的 JSON 数据或其他数据,你需要读取请求主体(req.Body)。请注意,请求主体是 Reader 接口(interface)而不是字符串。如果您希望以 JSON 格式输入一个示例:
Handling JSON Post Request in Go
关于json - 如何列出 Gorilla Mux 中的所有变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33224464/