Limiting amount of data read in the response to a HTTP GET request
<p>I'm scraping HTML pages and have set up a HTTP client like so:</p>

<pre><code>client := *http.Client{
        Transport: &amp;http.Transport{
            Dial: (&amp;net.Dialer{
                Timeout:   30 * time.Second,
                KeepAlive: 30 * time.Second,
            }).Dial,
            TLSHandshakeTimeout:   10 * time.Second,
            ResponseHeaderTimeout: 10 * time.Second,
        },
    }
</code></pre>

<p>Now when I make GET requests of multiple URLs I don't want to get stuck with URLs that deliver massive amount of data.</p>

<pre><code>response, err := client.Get(page.Url)
checkErr(err)
body, err := ioutil.ReadAll(response.Body)
checkErr(err)
page.Body = string(body)
</code></pre>

<p>Is there a way to limit the amount of data (bytes) the GET request accepts from a resource and stops?</p>