documentation表示服务器和客户端http请求之间存在差异,例如,在正文为空的情况下。如何创建服务器请求以模拟传入的http请求以进行测试?
编辑:我特别想在单元测试期间创建http服务器请求。
答案 0 :(得分:2)
对不起延迟回答。昨晚有点跟踪。这是一个使用非零主体创建请求对象的快速示例。有一点需要注意的是,我并不认为我很烦,HTTP GET没有机构,因此您可能总是为该HTTP方法获得零值。对此并不积极,但如果是这样的话我也不会感到惊讶。
package main
import "fmt"
import "net/http"
import "strings"
func main() {
reader := strings.NewReader("")
req, _ := http.NewRequest("POST", "http://example.com", reader)
fmt.Printf("Body != nil ? %v, value: %s END\n", req.Body != nil, req.Body)
}
答案 1 :(得分:1)
我不知道你是否还在寻找答案,但Go实际上有一个用于测试HTTP服务器的软件包。
https://golang.org/pkg/net/http/httptest/
非常适合测试。您可以通过此处创建请求和服务器进行测试。