Golang NewRequest将POST参数传递给API进行测试

时间:2016-01-18 07:41:26

标签: testing go

这是我的测试方法,它创建一个新请求并传递POST参数。

url1 := "/api/addprospect"
data := url.Values{}
data.Add("customer_name", "value")
b := bytes.NewBuffer([]byte(data.Encode()))
request, err := http.NewRequest("POST", serverHttp.URL+url1, b)
res, err := http.DefaultClient.Do(request)

问题是,POST param没有被网址的函数处理程序接收。

你可以帮我设置正确的请求吗?

由于

1 个答案:

答案 0 :(得分:1)

您需要为请求正确设置内容类型标头。

request, err := http.NewRequest("POST", serverHttp.URL+url1, b)

request.Header.Set("Content-Type", "application/x-www-form-urlencoded")

res, err := http.DefaultClient.Do(request)