Получайте данные о погоде из Yahoo Weather API с помощью Oauth 1.0

Я разрабатываю веб-портал, использующий веб-службу Yahoo для измерения температуры в реальном времени. Я использовал комбинированный запрос YQL для получения данных о погоде по широте и долготе, что было неплохо:

https://query.yahooapis.com/v1/public/yql?q=select * from weather.forecast where woeid in (select woeid from geo.placefinder where text='lat,lon')&format=json

С января этого года комбинированный запрос больше не работал. Поэтому мне пришлось сделать два отдельных http-запроса последовательно, чтобы получить данные.

  1. Получить горе от лан, лон и appid
  2. Получить данные от woeid

Получение данных из Yahoo каждый раз занимает довольно много времени и менее эффективно. Я некоторое время гуглил решение, чтобы улучшить это, но большинство из них предназначены для старых версий API погоды Yahoo. Я ищу способ сократить время или некоторые другие основные поставщики бесплатных погодных услуг, предлагающие погоду в мире.

Обновление (2016.03.24)

Я нашел способ заставить комбинированный YQL работать из этого thread< /а>.

Измените YQL на:

https://query.yahooapis.com/v1/public/yql?q=select * from weather.forecast where woeid in (select woeid from geo.placefinder where text='(lat,lon)')&format=json

Просто нужно добавить скобки вокруг геолокации. Предыдущий работал недавно.

Обновление (2016.03.25)

Служба погоды Yahoo вчера не работала, и YQL долгое время был недействителен. В этом официальном документе говорится, что Oauth 1 применялся с 15 марта через URL-адрес https://query.yahooapis.com/v1/yql?q=...
Несмотря на то, что общедоступная ссылка вернулась сегодня, я обнаружил, что не могу переключить единицу измерения погоды, добавив u='c' или u='f'.

Я не знаю, будет ли API погоды Yahoo поддерживать старый URL или нет. Пока что он еще жив. Я с нетерпением жду решения для запроса погоды Yahoo с помощью Oauth 1.0 в Javascript.


person ichbinblau    schedule 14.03.2016    source источник
comment
openweathermap.org может быть альтернативой   -  person smcd    schedule 24.03.2016
comment
Старый общедоступный URL-адрес больше не работает (по состоянию на апрель 2016 г.). Теперь нужно использовать oauth.   -  person Sujay Phadke    schedule 08.04.2016
comment
@SujayPhadke до сих пор я все еще использую старый URL. Я не знаю, когда он станет недействительным.   -  person ichbinblau    schedule 08.04.2016