🔗

Consumir una API JSON

🧑‍🎓 Aprendiz⏱️ 15 minutos

📋 Prerequisitos sugeridos

  • Node.js instalado

Lo que vas a construir

En este proyecto vas a aprender a obtener datos de internet usando APIs.

Crearás un script que se conecta a una API pública, descarga información de usuarios, y la muestra formateada en tu terminal. Esta es la base de cualquier aplicación moderna: obtener datos externos y procesarlos.

Al terminar entenderás cómo funcionan las APIs REST y podrás conectarte a cualquier servicio que ofrezca una.


Paso 1: Una API pública gratuita

Usaremos JSONPlaceholder, una API de prueba.

# Prueba desde terminal
curl https://jsonplaceholder.typicode.com/users/1

Paso 2: Pídele a una IA el código

Necesito un script en Node.js que:
- Haga fetch a https://jsonplaceholder.typicode.com/users
- Muestre el nombre y email de cada usuario
- Use async/await

Paso 3: Código típico

La IA te dará algo como:

async function getUsers() {
  const response = await fetch('https://jsonplaceholder.typicode.com/users');
  const users = await response.json();

  users.forEach(user => {
    console.log(`${user.name} - ${user.email}`);
  });
}

getUsers();

Paso 4: Ejecuta

node fetch-users.js

Verás una lista de usuarios con sus emails.


Otras APIs públicas

APIURLDatos
JSONPlaceholderjsonplaceholder.typicode.comUsuarios, posts, comentarios
OpenWeatheropenweathermap.org/apiClima (requiere API key)
PokeAPIpokeapi.coPokémon
RandomUserrandomuser.meUsuarios aleatorios

Manejo de errores

async function getUsers() {
  try {
    const response = await fetch('https://api.ejemplo.com/users');

    if (!response.ok) {
      throw new Error(`HTTP error! status: ${response.status}`);
    }

    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Error:', error.message);
  }
}

Si algo falló

ErrorCausaSolución
fetch is not definedNode.js < 18Actualiza Node.js o usa node-fetch
ECONNREFUSEDAPI caídaVerifica la URL
SyntaxError: JSONRespuesta no es JSONRevisa response.text() primero

Próximo paso

Sistema de Notas Markdown — Organiza tu conocimiento