炎炎设计
编辑:感谢@JimB指向http.Response.Write方法,这使得这比我在开始时提出的要容易得多:resp, err := http.Get("http://google.com/")if err != nil{ log.Panic(err)}f, err := os.Create("output.txt")defer f.Close()resp.Write(f)这是我的第一个答案你可以这样做:resp, err := http.Get("http://google.com/")body, err := ioutil.ReadAll(resp.Body)// write whole the bodyerr = ioutil.WriteFile("body.txt", body, 0644)if err != nil { panic(err)}这是对我的第一个答案的编辑:感谢添加标题部分的@Hector Correa。这是一个更全面的片段,针对您的整个问题。这将标题后跟请求正文写入 output.txt//get the responseresp, err := http.Get("http://google.com/")//bodybody, err := ioutil.ReadAll(resp.Body)//headervar header stringfor h, v := range resp.Header { for _, v := range v { header += fmt.Sprintf("%s %s \n", h, v) }}//append all to one slicevar write []bytewrite = append(write, []byte(header)...)write = append(write, body...)//write it to a fileerr = ioutil.WriteFile("output.txt", write, 0644)if err != nil { panic(err)}