Conexión de API para Renderizar Personajes en Aplicación Web
Clase 11 de 16 • Curso de Single Page Application con JavaScript Vanilla
Resumen
¿Cómo conectar nuestra aplicación a una API de Rick and Morty?
En el desarrollo de aplicaciones web, integrar datos de una API externa es una habilidad esencial. En este ejemplo práctico, aprenderemos a conectar nuestra aplicación a la API de Rick and Morty. Esta API nos proporciona la información de los personajes de esta popular serie animada. Vamos a construir la lógica para traer estos datos a nuestro proyecto.
¿Qué pasos seguir para crear la lógica de integración?
Para conectar nuestra aplicación a la API, primero necesitamos crear una utilería que maneje las solicitudes. La lógica estará basada en uso de funciones asíncronas y la técnica fetch
, de tal manera que nuestra aplicación pueda interactuar de manera eficaz con los datos.
-
Creación del archivo utilitario:
- Crearemos un archivo llamado
getData.js
donde se gestionará toda la lógica para obtener datos de la API.
- Crearemos un archivo llamado
-
Definición de la constante para la URL de la API:
const apiURL = 'https://rickandmortyapi.com/api/character/';
-
Desarrollo de la función
getData
:- Se generará una función utilizando
async
yawait
para manejar las promesas de manera eficaz, posibilitando tanto la llamada general a todos los personajes, como la llamada específica a un personaje basado en su ID.
const getData = async (id) => { const apiURl = id ? `${apiURL}${id}` : apiURL; try { const response = await fetch(apiURl); const data = await response.json(); return data; } catch (error) { console.error('Fetch Error', error); } };
- Se generará una función utilizando
¿Cómo utilizar getData
en nuestra aplicación?
Ahora que hemos creado la lógica para obtener datos, necesitamos integrar esta funcionalidad en nuestros componentes de la aplicación, lo que asegurará que nuestros usuarios vean la información de los personajes correctamente.
-
Importar
getData
en el componente principal:- Importaremos la función en el componente correspondiente de nuestra aplicación, simplemente accediendo desde el directorio donde se encuentra nuestro archivo utilitario.
import getData from '../utils/getData';
-
Lógica dentro del componente Home:
- Dentro del componente Home, utilizaremos
getData
al cargar el componente para traer y renderizar la lista de personajes.
const loadCharacters = async () => { const characters = await getData(); // Aquí se procesan y se renderizan los personajes };
- Dentro del componente Home, utilizaremos
-
Iteración y renderizado de personajes:
- La obtención de datos se realiza al inicializar la aplicación, integrando los personajes en el DOM de manera dinámica.
characters.map(character => ( `<div> <h2>${character.name}</h2> <img src="${character.image}" alt="${character.name}"> </div>` )).join('');
¿Cómo podemos verificar la funcionalidad en el navegador?
Con estos pasos cumplidos, el testeo es crucial para validar el funcionamiento correcto de nuestra aplicación:
- Navega a la sección que renderiza los personajes.
- Verifica que la información se carga correctamente desde la API.
Este proceso de integración demuestra cómo conectar una aplicación a una API externa, utilizando JavaScript y un enfoque estructurado y modular. ¡Ahora es tu turno de experimentar y crear más proyectos conectados a APIs!