我发现go http包相当混乱。我认为客户端和服务器应该分为两个不同的包,也许第三与常见的东西。
无论如何尝试做一个POST请求,但我不能得到它完成。在另一边没有收到。
这是它应该如何工作吗?我知道PostForm功能,但我认为我不能使用它,因为它不能与httputil测试对吗?
hc := http.Client{} req,err := http.NewRequest("POST",APIURL,nil) form := url.Values{} form.Add("ln",c.ln) form.Add("ip",c.ip) form.Add("ua",c.ua) req.PostForm = form req.Header.Add("Content-Type","application/x-www-form-urlencoded") glog.Info("form was %v",form) resp,err := hc.Do(req)
你有大多数正确的想法,它只是发送的形式是错误的。该表单属于请求的正文。
req,url,strings.NewReader(form.Encode()))