网络正在减慢请求或读取响应正文

The network is slowing down the request or reading the response body

我正在写客户端。什么动作应该被超时保护?获取请求 resp, err := http.Get(fileURL) 或读取响应正文 n, err = resp.Body.Read(chunk)。以下哪些操作会受到网络的影响?

最简单的形式将涵盖拨号和读取正文的超时。 (如果一个连接没有被重用)

c := &http.Client{
    Timeout: 15 * time.Second,
}
resp, err := c.Get("https://foo.bar/")

这些都是我知道的http客户端超时。

c := &http.Client{
    Transport: &http.Transport{
        Dial: (&net.Dialer{
                Timeout:   30 * time.Second,
                KeepAlive: 30 * time.Second,
        }).Dial,
        TLSHandshakeTimeout:   10 * time.Second,
        ResponseHeaderTimeout: 10 * time.Second,
        ExpectContinueTimeout: 1 * time.Second,
    }
}

resp, err := c.Get("https://foo.bar/")