在 Go http 服务器中,我可以获得 POST 请求正文。Go net/http 包似乎删除了 GET 请求正文。我知道最好不要将http GET 与请求正文一起使用,但我需要使用请求正文处理 http GET。是否可以不更改标准库?请帮忙,因为我不想用 libevent 切换回 C!
当客户端发送带有请求正文的 POST 时,下面的代码将显示正文内容。但是当客户端发送带有请求正文的 GET 时,正文中没有任何内容。
func handler(w http.ResponseWriter, r *http.Request) {
defer r.Body.Close()
body, _ := ioutil.ReadAll(r.Body)
log.Printf("body: %v", string(body))
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}