繁体   English   中英

HTTP发布请求解码问题golang EOF

[英]Http post request decoding issue golang EOF

与邮递员的请求是可以的,但如果是ajax,请致电http:紧急服务XXX.XXX.XXX.XXX:XXXXX:EOF

func BodyToJson(r *http.Request)  map[string]interface{}{
    decoder := json.NewDecoder(r.Body);
    fmt.Println(reflect.TypeOf(r.Body).Kind())
    fmt.Println(decoder);
    var dat map[string]interface{}
    err := decoder.Decode(&dat)
    if err!= nil{
        panic(err);
    }
    return dat
 }

您的应用程序可能会将数据发布为表格。

您可能必须使用以下代码来解析数据。

r.ParseForm()
defer r.Body.Close()
log.Println(r.Form)

您应该检查标题Content-Type。 也许这个例子会有所帮助。

if request.Method == "POST" {
    dat := make(map[string]interface{})
    if postData, err := ioutil.ReadAll(request.Body); err != nil {
        panic(err)
    } else if err = json.Unmarshal(postData, &dat); err != nil{
        panic(err)
    } else {
        //use dat....
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM