go
resource_error
ai_generated
true
error: http: response body too large
ID: go/http-response-body-leak
80%Fix Rate
86%Confidence
0Evidence
2024-11-18First Seen
Version Compatibility
| Version | Status | Introduced | Deprecated | Notes |
|---|---|---|---|---|
| 1.21 | active | — | — | — |
Root Cause
HTTP 响应体超过预设的最大限制,导致读取失败。
generic中文
HTTP 响应体超过预设的最大限制,导致读取失败。
Workarounds
-
90% success
body, err := io.ReadAll(io.LimitReader(resp.Body, 1<<20))
-
85% success
if resp.ContentLength > 1<<20 { log.Println("响应过大") }
Dead Ends
Common approaches that don't work:
-
90% fail
会导致数据不完整或程序崩溃。
-
70% fail
如果恶意响应过大,会消耗大量内存。