Конечная точка .NET Core 2.2 от стороннего поставщика данных - PullRequest
0 голосов
/ 28 февраля 2019

Я тренируюсь с .NET Core и имею задачу создать конечную точку для моего веб-интерфейса (я использую Vue.js) с использованием поставщика данных, такого как OpenWeatherMap.Я знаю, как напрямую обращаться к этому провайдеру и отправлять запросы через Axios.Но как я могу сделать это с .NET Core 2.2?В настоящее время у меня есть две директории в папке проекта, где я запускаю фронтенд Vue.js и бэкэнд .NET Core соответственно.Я предполагаю, что должен создать какую-то переменную, называемую baseApiUrl, и присвоить ей URL из OpenWeatherMap, но я не совсем понимаю, где мне следует это сделать.

Ответы [ 2 ]

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

Прежде всего, вам нужен ключ API от OpenWeatherAPI.После этого вы можете делать простые запросы к OpenWeatherAPI, используя почтальон, чтобы проверить, работает ли API Key.

После того, как все настроено, вы можете использовать библиотеку HttpClient .NET Core для выполнения вызовов API, как показано ниже:

using (var client = new HttpClient())
    {
            client.BaseAddress = new Uri("http://api.openweathermap.org");
            var response = await client.GetAsync($"<-----Tested URI HERE-------->");
            response.EnsureSuccessStatusCode();
            var stringResult = await response.Content.ReadAsStringAsync();
            /* Read JSON from stringResult */ 
    }
0 голосов
/ 04 марта 2019

В вашем проекте Vue должна быть папка с именем config и ваши переменные окружения (производство и разработка). Правильный подход - создание там переменной baseApiUrl, доступ к которой можно получить через ваше приложение с помощью этой команды

process.env.baseApiUrl

Редактировать: все настраиваемые переменные в .NET Core определены в appsettings.json, вы можете иметь несколько файлов настроек для каждой среды или развертывания.Затем, после того, как вы сможете получить к нему доступ через интерфейс IOptions, вы сможете в него углубиться, и его легко освоить.

...