Данные из REST API в Azure - PullRequest
       32

Данные из REST API в Azure

0 голосов
/ 07 марта 2019

Я реализовал вызовы REST API с помощью отдельного консольного приложения c #.API возвращает JSON, который я десериализирую и затем сохраняю в базе данных.Теперь я хочу реализовать всю логику в платформе Azure, чтобы ее можно было вызывать, передавая дату начала, дату окончания и местоположение хранилища (оно должно выполняться для трех местоположений). Ниже приведен код:

static void Main()
    {


        MakeInventoryRequest();

    }

    static async void MakeInventoryRequest()
    {
        using (var client = new HttpClient())
        {
            var queryString = HttpUtility.ParseQueryString(string.Empty);

            // Request headers
            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "5051fx6yyy124hhfyuscf34f57ce9");


            // Request parameters

            queryString["query.locationNumbers"] = "4638";
            queryString["availableFromDate"] = "2019-01-01";
            queryString["availableToDate"] = "2019-03-07";


            var uri = "https://api-test.location.cloud/api/v1/inventory?" + queryString;

            using (var request = new HttpRequestMessage(HttpMethod.Get, uri))
            using (var response = await client.SendAsync(request))
            {

                var stream = await response.Content.ReadAsStreamAsync();

                if (response.IsSuccessStatusCode == true)
                {
                    List<Inventory> l1 = DeserializeJsonFromStream<List<Inventory>>(stream);

                    InsertInventoryRecords(l1);
                }


                if (response.IsSuccessStatusCode == false)
                {
                    throw new Exception("Error Response Code: " + response.StatusCode.ToString() + "Content is: " + response.Content.ReadAsStringAsync().Result.ToString());
                }
            }
        }
    }

Пожалуйста,предложить наилучший дизайн с использованием компонентов Azure

1 Ответ

0 голосов
/ 12 марта 2019

Имея информацию в руках, я думаю, у вас есть несколько вариантов, вам нужно выяснить, какой из них подходит вам лучше всего.Вы можете использовать облачный сервис для размещения консольного приложения (вам придется изменить его на рабочую роль, Visual Studio поможет вам преобразовать это).Я не уверен насчет ожидаемой нагрузки, но вы всегда можете увеличить и уменьшить экземпляр, и его можно развернуть в разных регионах.

Я вижу, что вы сохраняете данные, если вы хотите это сделать, вы можете использовать многие предложения SQL.Для вызова REST API вы также можете использовать функции Azure и ADF.

Пожалуйста, не стесняйтесь комментировать, если вы хотите получить более подробную информацию о том же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...