title: EOF error after writing HTTP response body to file
body: <p>I'd like to save a JSON response to a text file before parsing it:</p>
  
  <pre><code>req, err := http.NewRequest("POST", url, body)
  req.Header.Set("Authorization", "secret_key")
  req.Header.Set("Content-Type", "application/json")
  
  resp, err := client.Do(req)
  if err != nil {
      log.Fatal(err)
  }
  defer resp.Body.Close()
  
  f, err := os.Create("./response.json")
  if err != nil {
      log.Fatal(err)
  }
  defer f.Close()
  io.Copy(f, resp.Body)
  
  var result JSONResult
  if err := json.NewDecoder(resp.Body).Decode(&amp;result); err != nil {
      log.Fatal(err)
  }
  </code></pre>
  
  <p>It successfully writes the JSON to a file but then fails on the decoding step  with an error that just says <code>EOF</code>. If I parse before writing to file it parses ok, but then the file is empty. Can someone please explain what's happening  here? Thanks!</p>