Este es un pequeño challange para implementar una API y poder comparar el pronóstico del tiempo para los próximos 7 días, por día con Open Weather, de diferentes destinos que ofrece Reservamos. La aplicación cliente debe poder enviar el nombre de una ciudad y obtener la temperatura máxima y mínima para esos lugares.
- Ruby 3.2.2
bundle install
bin/rails db:setup
OPEN_WEATHER_MAP_API_KEY=a5a47c18197737e8eeca634cd6acb581 bin/rails server -p 3000
Para empezar a consumir la API es necesario consultar la siguiente URL después de levantar el servidor:
http://localhost:3000/weather_forecast
El endpoint devuelve lugares (ciudades, aeropuertos y terminales de autobús) disponibles en Reservamos y es necesario enviar
el parametro q
con el nombre parcial o total de un lugar, puede ser una ciudad, aeropuerto o terminal de autobús. Por ejemplo:
http://localhost:3000/weather_forecast?q=mon
Los resultados serán los mismos que Reservamos API devuelve pero con el pronostico del tiempo de los próximos 7 días de cada coincidencia encontrada.
Nota: Si en los resultados obtenidos la key de weather_forecast: []
por cada lugar regresa vacío, es posible que la API de Open Weather denege el servicio por
el tipo de subscripción. En algún momento la API Key proporcionada daba resultados satisfactorios pero de último momento la API Key fue bloqueada por Open Weather, para
una mejor experiencia de usuario cambiar la API Key de la variable de ambiente de OPEN_WEATHER_MAP_API_KEY
, consultar en Correr el servidor de este README.