慕的地6264312
httputil.DumpResponse是您所需要的(也由 Adrian 建议)。以下代码应该会有所帮助:package mainimport ( "fmt" "net/http" "net/http/httptest" "net/http/httputil" "os")func main() { // Create a test server server := httptest.NewServer(http.HandlerFunc( func(w http.ResponseWriter, r *http.Request) { // Set Header w.Header().Set("HEADER_KEY", "HEADER_VALUE") // Set Response Body fmt.Fprintln(w, "DUMMY_BODY") })) defer server.Close() // Request to the test server resp, err := http.Get(server.URL) if err != nil { fmt.Fprintln(os.Stderr, err) os.Exit(1) } defer resp.Body.Close() // DumpResponse takes two parameters: (resp *http.Response, body bool) // where resp is the pointer to the response object. And body is boolean // to dump body or not dump, err := httputil.DumpResponse(resp, true) if err != nil { fmt.Fprintln(os.Stderr, err) os.Exit(1) } // Dump the response ([]byte) fmt.Printf("%q", dump)}输出:"HTTP/1.1 200 OK\r\nContent-Length: 11\r\nContent-Type: text/plain; charset=utf-8\r\nDate: Wed, 18 Nov 2020 17:43:40 GMT\r\nHeader_key: HEADER_VALUE\r\n\r\nDUMMY_BODY\n"