Packages
ex_aws
0.4.19
2.7.0
2.6.1
2.6.0
2.5.11
2.5.10
2.5.9
2.5.8
2.5.7
2.5.6
2.5.5
2.5.4
2.5.3
2.5.2
2.5.1
2.5.0
2.4.4
2.4.3
2.4.2
2.4.1
2.4.0
2.3.4
2.3.3
2.3.2
2.3.1
2.3.0
2.2.10
2.2.9
2.2.8
2.2.7
2.2.6
2.2.5
2.2.4
2.2.3
2.2.2
2.2.1
2.2.0
2.1.9
2.1.8
2.1.7
2.1.6
2.1.5
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.2
2.0.1
2.0.0
1.1.5
1.1.4
1.1.3
1.1.2
1.1.1
1.1.0
1.0.0
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.1
1.0.0-beta3
1.0.0-beta2
1.0.0-beta1
1.0.0-beta0
0.5.0
0.4.19
0.4.18
0.4.17
0.4.15
0.4.14
0.4.13
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.1
0.3.0
0.2.0
0.1.2
0.1.1
0.1.0
0.0.5
0.0.4
0.0.3
AWS client for Elixir. Currently supports Dynamo, DynamoStreams, EC2, Firehose, Kinesis, KMS, Lambda, RRDS, Route53, S3, SES, SNS, SQS, STS and others.
Current section
Files
Jump to
Current section
Files
lib/ex_aws/request/httpoison.ex
defmodule ExAws.Request.HTTPoison do
@behaviour ExAws.Request.HttpClient
@moduledoc """
Configuration for HTTPoison
Options can set for HTTPoison with the following config
HTTPoison 0.7.X
```
config :ex_aws, :httpoison_opts,
recv_timeout: 30_000
```
HTTPoison 0.6.X
```
config :ex_aws, :httpoison_opts,
hackney: [recv_timeout: 30_000]
```
The default config handles setting both of the above
"""
@default_timeout 30_000
# The recv_timeout is repeated inside :hackney because in 0.6.X of
# HTTPoison it couldn't be set as an option to httpoison directly.
@default_opts [
recv_timeout: @default_timeout,
hackney: [recv_timeout: @default_timeout]
]
def request(method, url, body \\ "", headers \\ []) do
opts = Application.get_env(:ex_aws, :httpoison_opts, @default_opts)
{status, resp} = HTTPoison.request(method, url, body, headers, opts)
{status, Map.from_struct(resp)}
end
end