View Source AWS.HTTPClient behaviour (aws-elixir v1.0.4)
Specifies the behaviour of a HTTP Client.
You can switch the default HTTP client which uses hackney underneath
by defining a different implementation by setting the :http_client
configuration in AWS.Client
:
client = %AWS.Client{http_client: {MyHttpClient, []}}
AWS.SNS.publish(client, "My message")
Link to this section Summary
Callbacks
Executes a HTTP request. Either returns {:ok, map} or {:error, reason}.
Link to this section Callbacks
@callback request( method :: atom(), url :: binary(), body :: iodata(), headers :: list(), options :: keyword() ) :: {:ok, %{status_code: integer(), headers: [{binary(), binary()}], body: binary()}} | {:error, term()}
Executes a HTTP request. Either returns {:ok, map} or {:error, reason}.
body
is already parsed into iodata. It may be in either JSON or XML format.headers
already contains required headers such as Authorization. See AWS.Request.sign_v4 for more details.