Packages

Elixir Azure Storage REST Client support Blob, Queue, Fileshare and TableStorage service

Current section

Files

Jump to
ex_azure_storage lib azure_storage request.ex
Raw

lib/azure_storage/request.ex

defmodule AzureStorage.Request do
require Logger
alias AzureStorage.Request.{Context, SharedKey}
alias Http.Client
def build(%Context{} = context, config \\ []), do: Context.build(context, config)
def request(%Context{method: :get, url: url} = context) do
headers = context |> SharedKey.sign_request()
Client.get(url, headers, [])
end
def request(%Context{method: :delete, url: url} = context) do
headers = context |> SharedKey.sign_request()
Client.delete(url, headers, [])
end
def request(%Context{method: :post, url: url, body: body} = context) do
headers = context |> SharedKey.sign_request()
Client.post(url, body, headers, [])
end
def request(%Context{method: :put, url: url, body: body} = context) do
headers = context |> SharedKey.sign_request()
Client.put(url, body, headers, [])
end
end