Qué es cURL: comando, opciones y parámetros

Qué es cURL: comando, opciones y parámetros

cURL es una herramienta open source que se puede utilizar en línea de comandos o scripts para transferir datos a través de distintos protocolos de red como pueden ser HTTP, FTP o IMAP. Dentro del mundo del desarrollo web lo habitual es utilizarla para trabajar mediante HTTPS permitiendo conectividad entre diferentes entornos.

Dada su versatilidad se puede utilizar para enviar y recibir archivos, ejecutar scripts, comprobar la conectividad a un servidor o enviar consultas HTTP que contengan datos, por ejemplo. Las aplicaciones pueden ser tan variadas como se quiera.

El modo de empleo es indicar primero el comando, a continuación añadiríamos las opciones en su caso y por último la URL a la que haremos la consulta. Quedaría del siguiente modo: curl [OPCIONES] <URL>

Si por ejemplo quisiéramos realizar una solicitud GET con cURL podríamos hacerlo usando el comando curl del siguiente modo:

curl https://www.mi-web.es

Para enviar datos con POST en cambio, podemos incluir la opción -d o --data:

curl -d 'nombre=valor' https://www.mi-web.es

Esta herramienta puede ser utilizada por la mayoría de los lenguajes de programación que permitan usar líneas de comandos como pueden ser PHP o Python. Aunque su sintaxis será siempre la misma, la integración de cURL en cada lenguaje atenderá a los requisitos de éste.

Opciones del comando cURL

Una vez visto qué es y cómo se utiliza, a continuación listaré los parámetros más comunes que he extraído directamente de la ayuda de cURL a través de la consola de comandos. Se trata de un listado muy reducido pero de gran utilidad. Verás que estas opciones pueden llamarse con un modo abreviado o con uno largo.

-d, --data : enviar datos HTTP POST.
-f, --fail : fallar rápidamente sin salida en errores HTTP.
-h, --help : obtener ayuda para comandos.
-i, --include : incluir cabeceras de respuesta del protocolo en la salida.
-o, --output : escribir en un archivo en lugar de en la salida estándar.
-O, --remote-name : escribir la salida en un archivo con el mismo nombre que el archivo remoto.
-s, --silent : modo silencioso.
-T, --upload-file : transferir el archivo local al destino.
-u, --user : usuario y contraseña del servidor.
-A, --user-agent : enviar un agente de usuario al servidor.
-v, --verbose : hacer que la operación sea más habladora.
-V, --version : mostrar el número de versión y salir.

En caso de que quieras el listado completo puedes usar --help all y si deseas conocer más sobre cURL puedes consultar la documentación online que encontrarás en la página web del proyecto.

Jesús Tovar - Desarrollador web freelance Sevilla

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *