为什么这个 JSON 没有解码到我的结构中?
Why doesn't this JSON decode into my struct?
我在调用 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 start
map[]
将 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)
我在调用 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 start
map[]
将 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)