这是Go中的后续问题,如何检查写入http.ResponseWriter的http响应?因为那里的解决方案需要伪造请求,这对单元测试很有用,但不适用于实时服务器。
我想将我的 Web 服务响应它从用户收到的请求而返回的 HTTP 响应转储到日志文件(或控制台)中。输出应该告诉我标头是什么和 JSON 有效负载。
怎么做呢?
如果有一个 httputil.DumpResponse 等价物将 http.ResponseWriter 作为参数而不是 http.Response 就完美了,但目前我只能从 http.ResponseWriter 访问 Header
r = mux.NewRouter()
r.HandleFunc("/path", func (w http.ResponseWriter, r *http.Request) {
fmt.Printf("r.HandleFunc /path\n")
resp := server.NewResponse()
defer resp.Close()
r.ParseForm()
// Server does some work here
// ...
// Insert debug code here, something like
//
// dump = http.DumpResponseFromWriter(w)
// fmt.Printf("%s\n", dump)
});
http.Handle("/path", r)
小怪兽爱吃肉
相关分类