consumir-api-rest-con-axios-y-nodejs

Cómo consumir una API Rest con Axios y Node.js

Ya hemos visto cómo crear un API Rest con Node.js y la biblioteca express.js. Ahora aprenderemos cómo consumir una API Rest desde una aplicación Node.js utilizando la popular librería axios.

axios es una librería HTTP basada en promesas que nos permite **realizar peticiones HTTP desde el cliente en Node.js y en el navegador.

Axios es fácil de usar y proporciona una interfaz simple y consistente para trabajar con APIs RESTful. Tiene sus años, pero es una de las librerías más estables y ámpliamente utilizadas

Cómo usar axios

Primero, asegúrate de tener axios instalado en tu proyecto Node.js:

npm install axios

Ejemplo de Consumo de una API RESTful

Supongamos que tenemos una API RESTful que gestiona usuarios y que está disponible en la URL http://localhost:3000/usuarios.

Veamos un ejemplo de cómo podemos consumir esta API utilizando axios:

const axios = require('axios');

// Realizar una petición GET para obtener todos los usuarios
axios.get('http://localhost:3000/usuarios')
  .then((response) => {
    // Manejar la respuesta exitosa
    console.log('Usuarios:', response.data);
  })
  .catch((error) => {
    // Manejar el error en caso de fallo
    console.error('Error al obtener usuarios:', error);
  });

En este ejemplo, estamos realizando una petición GET a la URL http://localhost:3000/usuarios para obtener todos los usuarios.

Como vemos es muuuuy sencillo realizar peticiones a un API Rest con axios.js.

Luego, manejamos la respuesta exitosa en el método .then() y cualquier error en el método .catch().

Además de GET, axios soporta otros métodos HTTP como POST, PUT, DELETE, entre otros, que pueden ser utilizados según lo que necesites. También permite configurar cabeceras HTTP y enviar parámetros en las peticiones.

En fin, que deja hacer de todo. Si tenéis más dudas, consultar la documentación oficial de la biblioteca

Descarga el código

Todo el código de esta entrada está disponible para su descarga en Github github-full