🌀 Introducción Práctica a cURL: El Cliente HTTP desde la Terminal
Hey Coders, bienvenidos a esta guía práctica de cURL, una herramienta de línea de comandos open source que permite transferir datos usando URLs.
El nombre cURL proviene de Client URL, y su objetivo es facilitar la interacción con recursos web directamente desde la terminal, sin necesidad de interfaces gráficas como Postman o Insomnia.
🌐 ¿Por qué usar cURL?
cURL es ideal para programadores, sysadmins y testers porque:
- No necesita interfaz gráfica
- Es más rápida para automatizar tareas
- Soporta múltiples protocolos:
HTTP,HTTPS,FTP,FTPS,IMAP,GOPHERy más - Viene preinstalada en muchas distros Linux y está disponible en Windows y macOS
⚙️ Instalación
En Linux:
La mayoría de distribuciones ya incluyen curl. Verifícalo con:
curl --version
En Windows:
Puedes descargarlo desde curl.se/windows.
🔎 Empezando con cURL
Para practicar usaremos APIs gratuitas como:
📥 Realizar Peticiones GET
curl https://jsonplaceholder.typicode.com/users?_limit=2
curl https://reqres.in/api/users
Por defecto, la respuesta se imprime en la salida estándar (stdout).
Puedes añadir -v para ver información detallada de la petición y la respuesta:
curl -v https://jsonplaceholder.typicode.com/users?_limit=2
📄 Ver Solo Headers
Para mostrar solo los headers:
curl -i https://jsonplaceholder.typicode.com/posts/2
O también:
curl --head https://jsonplaceholder.typicode.com/posts/2
💾 Guardar la Respuesta en un Archivo
curl -o resultado.txt https://jsonplaceholder.typicode.com/posts/1
Usa -O (mayúscula) para guardar el archivo con su nombre original:
curl -O https://example.com/archivo.zip
También puedes limitar la velocidad de descarga:
curl -O --limit-rate 1000B https://example.com/archivo.zip
📨 Enviar Datos con POST
curl --data "title=hello post&body=this is my first post" https://jsonplaceholder.typicode.com/posts
✏️ Enviar PUT Requests
curl -X PUT -d "title=my new post" https://jsonplaceholder.typicode.com/posts/1
❌ DELETE Requests
curl -X DELETE https://jsonplaceholder.typicode.com/posts/1
🔐 Autenticación HTTP
curl -u usuario:contraseña https://example.com/protected
🔄 Seguir Redirecciones
Algunas URLs redirigen (como Google). Para seguirlas:
curl -L https://google.com
📤 FTP con cURL
Subir archivos:
curl -u usuario:contraseña -T archivo.txt ftp://ftp.tusitio.com
Descargar archivos:
curl -u usuario:contraseña -O ftp://ftp.tusitio.com/archivo.txt
🎨 Herramientas útiles para visualizar JSON
📚 Recursos Adicionales
¿Te ha sido útil esta guía? Puedes integrar cURL fácilmente en tus scripts, flujos de CI/CD o automatizaciones. Es una herramienta que todo desarrollador debería dominar.
¡Nos vemos en la terminal, Coders! 🧠💻