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
| API | URL | Datos |
|---|---|---|
| JSONPlaceholder | jsonplaceholder.typicode.com | Usuarios, posts, comentarios |
| OpenWeather | openweathermap.org/api | Clima (requiere API key) |
| PokeAPI | pokeapi.co | Pokémon |
| RandomUser | randomuser.me | Usuarios 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ó
| Error | Causa | Solución |
|---|---|---|
fetch is not defined | Node.js < 18 | Actualiza Node.js o usa node-fetch |
ECONNREFUSED | API caída | Verifica la URL |
SyntaxError: JSON | Respuesta no es JSON | Revisa response.text() primero |
Próximo paso
→ Sistema de Notas Markdown — Organiza tu conocimiento