Furlex v0.4.0 Furlex.Oembed View Source
A module for managing oembed data
Link to this section Summary
Functions
Returns a specification to start this module under a supervisor.
Issues a DELETE request to the given url.
Issues a DELETE request to the given url, raising an exception in case of failure.
Returns an Oembed endpoint for the given url
Fetches the list of Oembed providers
Issues a GET request to the given url.
Issues a GET request to the given url, raising an exception in case of failure.
Issues a HEAD request to the given url.
Issues a HEAD request to the given url, raising an exception in case of failure.
Invoked when the server is started. start_link/3
or start/3
will
block until it returns.
Issues an OPTIONS request to the given url.
Issues a OPTIONS request to the given url, raising an exception in case of failure.
Issues a PATCH request to the given url.
Issues a PATCH request to the given url, raising an exception in case of failure.
Issues a POST request to the given url.
Issues a POST request to the given url, raising an exception in case of failure.
Callback implementation for HTTPoison.Base.process_headers/1
.
Callback implementation for HTTPoison.Base.process_request_body/1
.
Callback implementation for HTTPoison.Base.process_request_headers/1
.
Callback implementation for HTTPoison.Base.process_request_options/1
.
Callback implementation for HTTPoison.Base.process_request_params/1
.
Callback implementation for HTTPoison.Base.process_request_url/1
.
Callback implementation for HTTPoison.Base.process_response/1
.
Callback implementation for HTTPoison.Base.process_response_body/1
.
Callback implementation for HTTPoison.Base.process_response_chunk/1
.
Callback implementation for HTTPoison.Base.process_response_headers/1
.
Callback implementation for HTTPoison.Base.process_response_status_code/1
.
Callback implementation for HTTPoison.Base.process_status_code/1
.
Callback implementation for HTTPoison.Base.process_url/1
.
Issues a PUT request to the given url.
Issues a PUT request to the given url, raising an exception in case of failure.
Issues an HTTP request using a Request
struct.
Issues an HTTP request with the given method to the given url.
Issues an HTTP request with the given method to the given url, raising an exception in case of failure.
Starts HTTPoison and its dependencies.
Requests the next message to be streamed for a given HTTPoison.AsyncResponse
.
Link to this section Types
body()
View Source
body() :: HTTPoison.Base.body()
body() :: HTTPoison.Base.body()
headers()
View Source
headers() :: HTTPoison.Base.headers()
headers() :: HTTPoison.Base.headers()
options()
View Source
options() :: HTTPoison.Base.options()
options() :: HTTPoison.Base.options()
params()
View Source
params() :: HTTPoison.Base.params()
params() :: HTTPoison.Base.params()
request()
View Source
request() :: HTTPoison.Base.request()
request() :: HTTPoison.Base.request()
url()
View Source
url() :: HTTPoison.Base.url()
url() :: HTTPoison.Base.url()
Link to this section Functions
child_spec(init_arg) View Source
Returns a specification to start this module under a supervisor.
See Supervisor
.
delete(url, headers \\ [], options \\ [])
View Source
delete(binary(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
delete(binary(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a DELETE request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
delete!(url, headers \\ [], options \\ [])
View Source
delete!(binary(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
delete!(binary(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a DELETE request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
endpoint_from_url(url, params \\ %{"format" => "json"}, opts \\ []) View Source
Returns an Oembed endpoint for the given url
Examples
iex> Oembed.endpoint_from_url "https://vimeo.com/88856141"
iex> Oembed.endpoint_from_url "https://vimeo.com/88856141", %{"format" => "xml"}
fetch_providers(type \\ :soft) View Source
Fetches the list of Oembed providers
Soft fetch will fetch cached providers. Hard fetch requests providers from oembed.com and purges the cache.
get(url, headers \\ [], options \\ [])
View Source
get(binary(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
get(binary(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a GET request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
get!(url, headers \\ [], options \\ [])
View Source
get!(binary(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
get!(binary(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a GET request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
head(url, headers \\ [], options \\ [])
View Source
head(binary(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
head(binary(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a HEAD request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
head!(url, headers \\ [], options \\ [])
View Source
head!(binary(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
head!(binary(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a HEAD request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
init(state) View Source
Invoked when the server is started. start_link/3
or start/3
will
block until it returns.
init_arg
is the argument term (second argument) passed to start_link/3
.
Returning {:ok, state}
will cause start_link/3
to return
{:ok, pid}
and the process to enter its loop.
Returning {:ok, state, timeout}
is similar to {:ok, state}
except handle_info(:timeout, state)
will be called after timeout
milliseconds if no messages are received within the timeout.
Returning {:ok, state, :hibernate}
is similar to {:ok, state}
except the process is hibernated before entering the loop. See
c:handle_call/3
for more information on hibernation.
Returning {:ok, state, {:continue, continue}}
is similar to
{:ok, state}
except that immediately after entering the loop
the c:handle_continue/2
callback will be invoked with the value
continue
as first argument.
Returning :ignore
will cause start_link/3
to return :ignore
and
the process will exit normally without entering the loop or calling
c:terminate/2
. If used when part of a supervision tree the parent
supervisor will not fail to start nor immediately try to restart the
GenServer
. The remainder of the supervision tree will be started
and so the GenServer
should not be required by other processes.
It can be started later with Supervisor.restart_child/2
as the child
specification is saved in the parent supervisor. The main use cases for
this are:
- The
GenServer
is disabled by configuration but might be enabled later. - An error occurred and it will be handled by a different mechanism than the
Supervisor
. Likely this approach involves callingSupervisor.restart_child/2
after a delay to attempt a restart.
Returning {:stop, reason}
will cause start_link/3
to return
{:error, reason}
and the process to exit with reason reason
without
entering the loop or calling c:terminate/2
.
Callback implementation for GenServer.init/1
.
options(url, headers \\ [], options \\ [])
View Source
options(binary(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
options(binary(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues an OPTIONS request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
options!(url, headers \\ [], options \\ [])
View Source
options!(binary(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
options!(binary(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a OPTIONS request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
patch(url, body, headers \\ [], options \\ [])
View Source
patch(binary(), any(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
patch(binary(), any(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a PATCH request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
patch!(url, body, headers \\ [], options \\ [])
View Source
patch!(binary(), any(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
patch!(binary(), any(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a PATCH request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
post(url, body, headers \\ [], options \\ [])
View Source
post(binary(), any(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
post(binary(), any(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a POST request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
post!(url, body, headers \\ [], options \\ [])
View Source
post!(binary(), any(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
post!(binary(), any(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a POST request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
process_headers(headers) View Source
Callback implementation for HTTPoison.Base.process_headers/1
.
process_request_body(body) View Source
Callback implementation for HTTPoison.Base.process_request_body/1
.
process_request_headers(headers) View Source
Callback implementation for HTTPoison.Base.process_request_headers/1
.
process_request_options(options) View Source
Callback implementation for HTTPoison.Base.process_request_options/1
.
process_request_params(params) View Source
Callback implementation for HTTPoison.Base.process_request_params/1
.
process_request_url(url) View Source
Callback implementation for HTTPoison.Base.process_request_url/1
.
process_response(response)
View Source
process_response(HTTPoison.Base.response()) :: any()
process_response(HTTPoison.Base.response()) :: any()
Callback implementation for HTTPoison.Base.process_response/1
.
process_response_body(body) View Source
Callback implementation for HTTPoison.Base.process_response_body/1
.
process_response_chunk(chunk) View Source
Callback implementation for HTTPoison.Base.process_response_chunk/1
.
process_response_headers(headers) View Source
Callback implementation for HTTPoison.Base.process_response_headers/1
.
process_response_status_code(status_code) View Source
Callback implementation for HTTPoison.Base.process_response_status_code/1
.
process_status_code(status_code) View Source
Callback implementation for HTTPoison.Base.process_status_code/1
.
process_url(url) View Source
Callback implementation for HTTPoison.Base.process_url/1
.
put(url, body \\ "", headers \\ [], options \\ [])
View Source
put(binary(), any(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
put(binary(), any(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues a PUT request to the given url.
Returns {:ok, response}
if the request is successful, {:error, reason}
otherwise.
See request/5
for more detailed information.
put!(url, body \\ "", headers \\ [], options \\ [])
View Source
put!(binary(), any(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
put!(binary(), any(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues a PUT request to the given url, raising an exception in case of failure.
If the request does not fail, the response is returned.
See request!/5
for more detailed information.
request(request)
View Source
request(HTTPoison.Request.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
request(HTTPoison.Request.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues an HTTP request using a Request
struct.
This function returns {:ok, response}
or {:ok, async_response}
if the
request is successful, {:error, reason}
otherwise.
Examples
request = %HTTPoison.Request{
method: :post,
url: "https://my.website.com",
body: "{\"foo\": 3}",
headers: [{"Accept", "application/json"}]
}
request(request)
request(method, url, body \\ "", headers \\ [], options \\ [])
View Source
request(atom(), binary(), any(), headers(), Keyword.t()) ::
{:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()}
| {:error, HTTPoison.Error.t()}
request(atom(), binary(), any(), headers(), Keyword.t()) :: {:ok, HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Issues an HTTP request with the given method to the given url.
This function is usually used indirectly by get/3
, post/4
, put/4
, etc
Args:
method
- HTTP method as an atom (:get
,:head
,:post
,:put
,:delete
, etc.)url
- target url as a binary string or char listbody
- request body. See more belowheaders
- HTTP headers as an orddict (e.g.,[{"Accept", "application/json"}]
)options
- Keyword list of options
Body: see type HTTPoison.Request
Options: see type HTTPoison.Request
This function returns {:ok, response}
or {:ok, async_response}
if the
request is successful, {:error, reason}
otherwise.
Examples
request(:post, "https://my.website.com", "{\"foo\": 3}", [{"Accept", "application/json"}])
request!(method, url, body \\ "", headers \\ [], options \\ [])
View Source
request!(atom(), binary(), any(), headers(), Keyword.t()) ::
HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
request!(atom(), binary(), any(), headers(), Keyword.t()) :: HTTPoison.Response.t() | HTTPoison.AsyncResponse.t()
Issues an HTTP request with the given method to the given url, raising an exception in case of failure.
request!/5
works exactly like request/5
but it returns just the
response in case of a successful request, raising an exception in case the
request fails.
start() View Source
Starts HTTPoison and its dependencies.
stream_next(resp)
View Source
stream_next(HTTPoison.AsyncResponse.t()) ::
{:ok, HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
stream_next(HTTPoison.AsyncResponse.t()) :: {:ok, HTTPoison.AsyncResponse.t()} | {:error, HTTPoison.Error.t()}
Requests the next message to be streamed for a given HTTPoison.AsyncResponse
.
See request!/5
for more detailed information.