2016-06-07 6 views
0

Я совершенно новичок во всем этом, но я пытаюсь написать что-то на C# (используя визуальную студию), которая будет получать метеорологические данные для меня. Мне нужны только дневные высокие/низкие темпы, и есть много веб-сайтов погоды, которые предлагают бесплатные API-интерфейсы, которые предоставляют эту информацию. Проблема в том, что я не знаю, как использовать API для получения моих данных или даже того, что это значит. Я просто ищу небольшой пример того, как я буду вводить URL-адрес или ключ API или все, что мне нужно, и как данные будут возвращены мне/как я мог бы затем поместить его в список или что-то использовать его в остальной части моей программы. Я знаю, что это довольно широкий вопрос, и, возможно, это неправильное место, чтобы спросить об этом, но если у кого-нибудь есть идеи для меня, это было бы здорово. Я прочитал несколько «простых API», которые не имели для меня никакого смысла.Как использовать API для сбора данных?

+1

[Google является вашим другом] (http://www.aspsnippets.com/Articles/Display-daily-Weather-Forecast-using-Weather-API-in -ASPNet.aspx) – Draken

ответ

1

Для получения данных из API вам не потребуется многого. Что-то вроде

using(WebClient client = new WebClient()) 
{ 
    // Download the data 
    string value = client.DownloadString("http://dev.theapi.com?key=<yourkey>&state=california"); 
} 

Ключ API, скорее всего, будет добавлен в качестве параметра в вашем URL-адресе. Данные, которые вы возвращаете, обычно находятся в формате JSON или XML. Затем вы можете просто десериализовать данные обратно на классы C#. Если у вас есть URL-адрес, вы также можете просто поместить его в браузер, и он должен вернуть те же данные, чтобы вы могли легко видеть, какая у вас структура. Большинство поставщиков API будут иметь либо библиотеки, которые сэкономят вас, выполняя грубую работу, и просто вернут вам приятные объекты, либо у них просто будут примеры URL-адреса для вызова и ожидаемые данные.

Надеюсь, что вы начнете. Очевидно, это довольно обобщенно.

0

Я считаю, что самый простой способ сделать то, что вы хотите, - это найти WEBAPI в Интернете, который может предоставить нужные вам данные. Вызов в веб-api довольно прост (на основе URL).

Как составили например

dataurl: http://someweatherservice/api/temps/[somedate и некоторые место информации]

Таким образом, вы будете использовать класс HTTPClient в ваших рамках языка, чтобы запросить против этого URL, который, скорее всего, вернет вам данные в любом XML или JSON для обработки.

Это примерно так же хорошо, как вы получите, потому что вопрос слишком расплывчатый/широкий.

Ключевые слова: WebAPI, XML, JSON, HTTPClient

Смежные вопросы