我在调用 JSON.stringify 之后发送这种数组{ "世": 1, "界": 1, "最": 1, "強": 1}但是在使用 json.NewDecoder.Decode 时遇到问题,是我的结构有问题吗?type text struct { Text map[string]int}我也无法将该数据发送回前端,如何将我的数据转换回 []byte 或者是否有另一种方法可将 json 发送回前端?func PostHandler(w http.ResponseWriter, r *http.Request){ log.Println("post start") if r.Method != "POST" { log.Println("in post but early return") http.NotFound(w, r) return } decoder := json.NewDecoder(r.Body) var t text err := decoder.Decode(&t) if err != nil { log.Println("I tried") log.Println(r.Body) } log.Println(t.Text) //w.Write([]byte(t.Text)) //throws conversion error} (我试图在前端和后端之间来回发送数据,以便在继续和扩展之前了解基础知识)另外从日志打印的是post startmap[]
1 回答
拉莫斯之舞
TA贡献1820条经验 获得超10个赞
将 JSON 值直接解码为map[string]int. 该映射对应于 JSON 值中的一个对象。
decoder := json.NewDecoder(r.Body)
var t map[string]int
err := decoder.Decode(&t)
if err != nil {
log.Println("I tried")
log.Println(r.Body)
}
log.Println(t)
- 1 回答
- 0 关注
- 161 浏览
添加回答
举报
0/150
提交
取消