fluminus v0.2.0 Fluminus.HTTPClient View Source

A HTTP client backed by HTTPoison that manages cookies.

Struct fields:

  • :cookies - cookies stored by this HTTP client.

Link to this section Summary

Link to this section Types

Link to this type

flattened_headers() View Source
flattened_headers() :: %{required(String.t()) => String.t()}

Link to this type

headers() View Source
headers() :: [{String.t(), String.t()}]

Link to this type

methods() View Source
methods() :: :get | :post

Link to this type

t() View Source
t() :: %Fluminus.HTTPClient{cookies: %{required(String.t()) => String.t()}}

Link to this section Functions

Link to this function

download(client, url, destination, overwrite \\ false, headers \\ []) View Source
download(Fluminus.HTTPClient.t(), String.t(), Path.t(), bool(), headers()) ::
  :ok | {:error, :exists | any()}

Downloads from the url to the destination.

If overwrite is false, this function will return {:error, :exists} if destination alread exists.

Link to this function

get(client, url, headers \\ []) View Source
get(Fluminus.HTTPClient.t(), String.t(), headers()) ::
  {:ok, Fluminus.HTTPClient.t(), flattened_headers(), HTTPoison.Response.t()}
  | {:error,
     %HTTPoison.Error{__exception__: term(), id: term(), reason: term()}}

Performs a GET request.

This is a convenience method that will call request/5

Link to this function

post(client, url, body, headers \\ [{"Content-Type", "application/x-www-form-urlencoded"}]) View Source
post(Fluminus.HTTPClient.t(), String.t(), String.t(), headers()) ::
  {:ok, Fluminus.HTTPClient.t(), flattened_headers(), HTTPoison.Response.t()}
  | {:error,
     %HTTPoison.Error{__exception__: term(), id: term(), reason: term()}}

Performs a POST request.

This is a convenience method that will call request/5

Link to this function

request(client, method, url, body \\ "", headers \\ []) View Source

Performs a HTTP request.

Note that for flattened headers, all the keys are converted to lowercase, and in case there are some headers with the same key, the value will contain the value of the last header with that key as returned by HTTPoison.