api-ow-chaning
TypeScript icon, indicating that this package has built-in type declarations

1.1.5 • Public • Published

Openweathermap api librería

Build Status npm version Coverage Status Documentation

Obtiene la respuesta del tiempo actual de un lugar usando diferentes opciones de filtro.

Nota

Primero debes registrarte en openweather dede aquí OpenWeather, luego dirigirse hasta aquí API keys para crear y obtener su key, después copiar la key y pegarla en your-apiKey.

Instalación

Ejecutar este comando

npm install api-ow-chaning

Uso

Seguir estas instrucciones de uso

Poner la API key de Openweathermap

Poner tu key en el archivo test/constants.js en your-apiKey para ejecutar las pruebas.

module.exports = {
    API_KEY: 'your-apiKey',
    API_URL: 'http://api.openweathermap.org'
};

Como añadirlo

const lib = require('openweather-api-chaning');
import lib form 'openweather-api-chaning';

Para obtener el pronostico del tiempo, por defecto un día

  • Obtener el tiempo actual buscando mediante el nombre del lugar
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchByName('Barcelona', 'es')
    .then(data => console.log(data))
    .catch(error => console.log(error));
  • Obtener el tiempo actual mediante la localización
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchByGeolocationGeographic({ lat: 43.2633534, lon: -2.951074 })
    .then(data => console.log(data))
    .catch(error => console.log(error));
  • Obtener el tiempo actual mediante el código postal del lugar
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchZipPostcode('08080', 'es')
    .then(data => console.log(data))
    .catch(error => console.log(error));

// Espera una respuesta de este estilo:

{
    coord: { lon: 2.16, lat: 41.39 },
    weather: [
        {
            id: 802,
            main: 'Clouds',
            description: 'nubes dispersas',
            icon: '03d'
        }
    ],
    base: 'stations',
    main: {
        temp: 10.39,
        feels_like: 5.25,
        temp_min: 8.89,
        temp_max: 11.67,
        pressure: 999,
        humidity: 50
    },
    visibility: 10000,
    wind: { speed: 4.6, deg: 320 },
    clouds: { all: 40 },
    dt: 1607173717,
    sys: {
        type: 1,
        id: 6398,
        country: 'ES',
        sunrise: 1607151749,
        sunset: 1607185327
    },
    timezone: 3600,
    id: 3128760,
    name: 'Barcelona',
    cod: 200
}

Para obtener el pronostico del tiempo de 5 días

Puede buscar el pronóstico del tiempo durante 5 días con datos cada 3 horas por nombre de ciudad añadiendo el flag true como ultimo parámetro.

  • Obtener el tiempo actual buscando mediante el nombre del lugar
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchByName('Barcelona', 'es', true)
    .then(data => {

        const { list } = data;
        // example
        list.forEach(e => {
            console.log(e);
        });
        
    })
    .catch(error => console.log(error));
  • Obtener el tiempo actual mediante la localización
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchByGeolocationGeographic({ lat: 43.2633534, lon: -2.951074 }, true)
    .then(data => {

        const { list } = data;
        // example
        list.forEach(e => {
            console.log(e);
        });
        
    })
    .catch(error => console.log(error));
  • Obtener el tiempo actual mediante el código postal del lugar
const m = lib.ApiService;

const api = new m('your-apiKey', 'es', 'm');

api.searchZipPostcode('08080', 'es', true)
    .then(data => {

        const { list } = data;
        // example
        list.forEach(e => {
            console.log(e);
        });
        
    })
    .catch(error => console.log(error));

// Espera una respuesta de este estilo:

{
    cod: "200",
    message: 0,
    cnt: 40,
    list: [
        {
            dt: 1607256000,
            main: {
                temp: 282.82,
                feels_like: 277.43,
                temp_min: 282.82,
                temp_max: 283.91,
                pressure: 1003,
                sea_level: 1003,
                grnd_level: 996,
                humidity: 62,
                temp_kf: -1.09
            },
            weather: [
                {
                    id: 802,
                    main: "Clouds",
                    description: "scattered clouds",
                    icon: "03d"
                }
            ],
            clouds: {
                all: 31
            },
            wind: {
                speed: 5.49,
                deg: 291
            },
            visibility: 10000,
            pop: 0,
            sys: {
                pod: "d"
            },
            dt_txt: "2020-12-06 12:00:00"
        },
        {
            dt: 1607266800,
            main: {
                temp: 284.14,
                feels_like: 278.5,
                temp_min: 284.14,
                temp_max: 284.79,
                pressure: 1002,
                sea_level: 1002,
                grnd_level: 996,
                humidity: 57,
                temp_kf: -0.65
            },
            weather: [
                {
                    id: 803,
                    main: "Clouds",
                    description: "broken clouds",
                    icon: "04d"
                }
            ],
            clouds: {
                all: 64
            },
            wind: {
                speed: 5.86,
                deg: 286
            },
            visibility: 10000,
            pop: 0,
            sys: {
                pod: "d"
            },
            dt_txt: "2020-12-06 15:00:00"
        },
        {
            dt: 1607277600,
            main: {
                temp: 283.32,
                feels_like: 278.46,
                temp_min: 283.32,
                temp_max: 283.42,
                pressure: 1003,
                sea_level: 1003,
                grnd_level: 997,
                humidity: 59,
                temp_kf: -0.1
            },
            weather: [
                {
                    id: 802,
                    main: "Clouds",
                    description: "scattered clouds",
                    icon: "03n"
                }
            ],
            clouds: {
                all: 46
            },
            wind: {
                speed: 4.68,
                deg: 305
            },
            visibility: 10000,
            pop: 0,
            sys: {
                pod: "n"
            },
            dt_txt: "2020-12-06 18:00:00"
        },
        ....
        
    ],
    city: {
        id: 3128760,
            name: "Barcelona",
            coord: {
            lat: 41.3888,
            lon: 2.159
        },
        country: "ES",
        population: 1621537,
        timezone: 3600,
        sunrise: 1607238205,
        sunset: 1607271721
    }
}

Autor

El autor es Sebastián Moreno Saavedra

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i api-ow-chaning

Weekly Downloads

1

Version

1.1.5

License

MIT

Unpacked Size

40.5 kB

Total Files

17

Last publish

Collaborators

  • chaning38