mitmproxy/mitmproxy · error · ValueError
Bad HTTP response line: {line!r}
Error message
Bad HTTP response line: {line!r} What it means
Error "Bad HTTP response line: {line!r}" thrown in mitmproxy/mitmproxy.
Source
Thrown at mitmproxy/net/http/http1/read.py:214
raise_if_http_version_unknown(http_version)
except ValueError as e:
raise ValueError(f"Bad HTTP request line: {line!r}") from e
return host, port, method, scheme, authority, path, http_version
def _read_response_line(line: bytes) -> tuple[bytes, int, bytes]:
try:
parts = line.split(None, 2)
if len(parts) == 2: # handle missing message gracefully
parts.append(b"")
http_version, status_code_str, reason = parts
status_code = int(status_code_str)
raise_if_http_version_unknown(http_version)
except ValueError as e:
raise ValueError(f"Bad HTTP response line: {line!r}") from e
return http_version, status_code, reason
def _read_headers(lines: Iterable[bytes]) -> Headers:
"""
Read a set of headers.
Stop once a blank line is reached.
Returns:
A headers object
Raises:
exceptions.HttpSyntaxException
"""
ret: list[tuple[bytes, bytes]] = []
for line in lines:
if line[0] in b" \t":View on GitHub (pinned to 2ac5b089d9)
When it happens
Trigger: Thrown at mitmproxy/net/http/http1/read.py:214 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of mitmproxy/mitmproxy@2ac5b089d9 (2026-08-26).
Data as JSON: /api/errors/fb139eb9e25ad2e8.
Report an issue: GitHub.