Packages
req
0.5.15
0.6.3
0.6.2
0.6.1
0.6.0
0.5.18
0.5.17
0.5.16
0.5.15
0.5.14
0.5.13
0.5.12
0.5.11
0.5.10
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.12
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
Req is a batteries-included HTTP client for Elixir.
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
lib/req/http_error.ex
defmodule Req.HTTPError do
@moduledoc """
Represents an HTTP protocol error.
This is a standardised exception that all Req adapters should use for HTTP-protocol-related
errors.
This exception is based on `Mint.HTTPError`.
"""
defexception [:protocol, :reason]
@impl true
def message(%{protocol: :http1, reason: reason}) do
Mint.HTTP1.format_error(reason)
rescue
FunctionClauseError ->
"http1 error: #{inspect(reason)}"
end
def message(%{protocol: :http2, reason: reason}) do
Mint.HTTP2.format_error(reason)
rescue
FunctionClauseError ->
"http2 error: #{inspect(reason)}"
end
end