Не удается заставить AccuWeather API работать правильно - PullRequest
0 голосов
/ 03 февраля 2019

Хорошо, поэтому я пытаюсь создать приложение погоды, которое будет отображать текущую температуру и прогноз на следующие 5 дней на основе вашего почтового индекса.Проблема заключается в том, что поиск выполняется по их собственным кодам по регионам, и единственное, что я могу найти по почтовому индексу, - это использование поиска местоположений, который представляет собой просто информацию о регионе.Я уже некоторое время пытаюсь работать с URL.Любая помощь приветствуется.Также я снова вставлю фиктивный текст для ключа API.Я попытался вставить ключ "currentconditions" поверх "местоположений", и это просто ошибка.Должен быть способ поиска погоды по почтовому индексу.Любая помощь приветствуется!

URL: http://dataservice.accuweather.com/locations/v1/postalcodes/search?apikey={api ключ здесь} & q = 28124

1 Ответ

0 голосов
/ 03 февраля 2019

Сначала необходимо получить уникальный ключ, представляющий данный почтовый индекс, с помощью службы locations, а затем вы можете получить прогнозные данные для этого ключа с помощью службы currentconditions.

В следующем примереиспользует jquery для взаимодействия с API и получения текущей температуры для моего местоположения:

const baseurl = 'http://dataservice.accuweather.com';
const apikey  = 'YOUR_API_KEY';

$.getJSON(`${baseurl}/locations/v1/postalcodes/search`, {
    'apikey': apikey,
    'q': '18612'
}).then(function (locData) {
    return $.getJSON(`${baseurl}/currentconditions/v1/${locData[0].Key}`, {
        'apikey': apikey
    });
}).then(function (tempData) {
    const temp = tempData[0].Temperature.Imperial;
    console.log(`${temp.Value}${temp.Unit}`);
});

Результат:

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