Bandera: Русский Русский Bandera: English English

curl para principiantes: tu primer paso en el mundo de las peticiones HTTP

Publicado el 08.09.2025

¡Hola! Si te interesa aunque sea un poco la web, seguramente has oído hablar de curl.
Es una herramienta poderosa y versátil de línea de comandos para interactuar con servidores web. Se usa para enviar y recibir datos mediante varios protocolos: HTTP, FTP, SFTP, así como protocolos de correo.

Esta guía es su primer paso. Nos centraremos en lo básico, que le ayudará a entender cómo funciona curl y cómo usarlo para tareas cotidianas.


¿Qué es curl y para qué sirve?

curl es la abreviatura de Client URL. Imagínelo como su navegador, pero sin interfaz gráfica. En lugar de abrir una página web, puede “pedir” a curl que haga una solicitud y le muestre qué respondió el servidor.

curl se utiliza a menudo para:

  • probar APIs;
  • descargar archivos;
  • comprobar la disponibilidad de sitios;
  • enviar datos a servidores;
  • interactuar con servidores de correo.

Sintaxis básica

La forma más sencilla de usar curl es indicar la URL. Por defecto se realiza una solicitud GET, y la respuesta del servidor se muestra directamente en la terminal:

curl https://example.com

Este comando descargará el código HTML de la página principal de example.com y lo mostrará en la consola.


Las opciones más útiles para principiantes

1. Salida detallada (-v o --verbose)

Para ver los encabezados de la solicitud y la respuesta, use:

curl -v https://example.com

Verá:

  • información sobre la conexión;
  • encabezados de la solicitud (>);
  • encabezados de la respuesta (<).

2. Guardar archivo (-O y -o)

# guardar el archivo con el nombre original
curl -O https://example.com/file.zip

# guardar con otro nombre
curl -o new_name.zip https://example.com/file.zip

3. Seguimiento de redirecciones (-L o --location)

Por defecto curl no sigue redirecciones. Para habilitarlo:

curl -L http://example.com

Envío de datos: solicitudes POST

Las solicitudes GET obtienen datos, y las POST los envían. Para enviar datos use -d:

curl -X POST -d "name=mike&age=30" https://example.com/api/register

curl añadirá automáticamente el encabezado Content-Type: application/x-www-form-urlencoded.


Trabajo con protocolos de correo

curl soporta SMTP, POP3 e IMAP. Es útil para pruebas o automatización.

Enviar un correo (SMTP)

curl -v --url "smtp://smtp.example.com:587" \
  --ssl-reqd \
  --mail-from "sender@example.com" \
  --mail-rcpt "recipient@example.com" \
  --upload-file email.txt \
  --user "username:password"
  • --ssl-reqd — requiere TLS.
  • --mail-from / --mail-rcpt — remitente y destinatario.
  • --upload-file — cuerpo del correo.

Ver correos (IMAP)

curl -v --url "imaps://imap.example.com" \
  --user "username:password" \
  -X "LIST \"\" \"INBOX\""

Esta es una solicitud para listar las carpetas en el servidor.


Conclusión

curl es una herramienta que debería estar en el arsenal de todo desarrollador e ingeniero DevOps. Hemos visto los escenarios básicos: solicitudes GET y POST, descarga de archivos, trabajo con redirecciones e incluso envío de correos.

Comience con estos ejemplos, y pronto curl será su fiel ayudante al trabajar con la web y las redes.

¿Necesitas ayuda?

Escríbeme y te ayudaré a resolver el problema

Publicaciones relacionadas