From 502bee91e8e2553b94229614cff8d0bea96ebd28 Mon Sep 17 00:00:00 2001 From: Hentioe Date: Thu, 29 Oct 2020 00:52:30 +0800 Subject: Add some APIs --- lib/azure_ex/request.ex | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'lib/azure_ex') diff --git a/lib/azure_ex/request.ex b/lib/azure_ex/request.ex index bf8277d..c33cd51 100644 --- a/lib/azure_ex/request.ex +++ b/lib/azure_ex/request.ex @@ -5,7 +5,7 @@ defmodule AzureEx.Request do alias AzureEx.{Config, TokenHosting} - @type method :: :get | :post + @type method :: :get | :post | :put @type data :: map @type result :: any @type error :: any @@ -25,6 +25,8 @@ defmodule AzureEx.Request do end end + @data_content_type "application/json" + @spec send(method, String.t(), data) :: httpoison_result defp send(:get, endpoint, _data) do headers = [Authorization: "Bearer #{TokenHosting.get_token()}"] @@ -35,11 +37,22 @@ defmodule AzureEx.Request do defp send(:post, endpoint, data) do headers = [ Authorization: "Bearer #{TokenHosting.get_token()}", - "Content-Type": "application/json" + "Content-Type": @data_content_type ] body = Jason.encode!(data || %{}) HTTPoison.post(endpoint, body, headers, Config.timeouts()) end + + defp send(:put, endpoint, data) do + headers = [ + Authorization: "Bearer #{TokenHosting.get_token()}", + "Content-Type": @data_content_type + ] + + body = Jason.encode!(data || %{}) + + HTTPoison.put(endpoint, body, headers, Config.timeouts()) + end end -- cgit v1.2.3