Skip to content

Instantly share code, notes, and snippets.

@masnun
Created March 1, 2017 22:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save masnun/be5f58f734f4fd4b9076adec9e889ca1 to your computer and use it in GitHub Desktop.
Save masnun/be5f58f734f4fd4b9076adec9e889ca1 to your computer and use it in GitHub Desktop.
defmodule Extorrent.Middleware.HTTPBasicAuth do
def call(env, next, %{username: username, password: password} = opts) do
env
|> add_authorization_header(username, password)
|> Tesla.run(next)
end
defp add_authorization_header(env, username, password) do
auth_hash = Base.encode64(username <> ":" <> password)
auth_string = "Basic #{auth_hash}"
headers =
Map.get(env, :headers)
|> Map.merge(%{"Authorization" => auth_string})
Map.put(env, :headers, headers)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment