Introducción
cURL es una utilidad de línea de comandos para transferir datos hacia o desde un servidor remoto utilizando uno de los protocolos admitidos. Se instala de forma predeterminada en macOS y la mayoría de las distribuciones de Linux.
Los desarrolladores utilizan cURL para probar API, ver encabezados de respuesta y realizar solicitudes HTTP.
En este artículo, explicaremos cómo usar cURL para realizar solicitudes POST. El método HTTP POST se utiliza para enviar datos al servidor remoto.
Realizar una solicitud POST
La forma general del curl
para realizar una solicitud POST es la siguiente:
curl -X POST [options] [URL]
La -X
especifica qué método de solicitud HTTP se utilizará cuando se comunique con el servidor remoto.
El tipo de cuerpo de la solicitud se indica mediante el encabezado Content-Type.
Normalmente, una solicitud POST se envía a través de un formulario HTML. Los datos enviados al formulario generalmente están codificados en multipart/form-data
o application/x-www-form-urlencoded
.
Para crear una solicitud POST, use la -F
, seguida del par field=value
El siguiente ejemplo muestra cómo realizar una solicitud POST a un formulario con los campos "nombre" y "correo electrónico":
curl -X POST -F 'name=noviello' -F '[email protected]' https://example.com/contact.php
Cuando se usa la opción -F
curl
envía los datos usando el tipo de contenido multipart/form-data
Otra forma de realizar una solicitud POST es utilizar la opción -d
Esto hace que los datos se envíen usando curl
usando la aplicación Content-Type application/x-www-form-urlencoded
.
curl -X POST -d 'name=noviello' -d '[email protected]' https://example.com/contact.php
Si la -d
se usa más de una vez, puede unir los datos usando el símbolo &
curl -X POST -d 'name=noviello&[email protected]' https://example.com/contact.php
Especifica el tipo de contenido
Para establecer un encabezado o tipo de contenido específico, use la opción -H
El siguiente comando establece el tipo de solicitud POST en application/json
y envía un objeto JSON:
curl -X POST -H "Content-Type: application/json" \
Cargar un archivo
Para enviar un archivo con curl
, simplemente agregue el @
antes de la ruta del archivo. El archivo puede ser un archivo, una imagen, un documento, etc.
curl -X POST -F 'image=@/home/user/Pictures/wallpaper.jpg' http://example.com/upload
Conclusión
Le mostramos cómo usar curl
para realizar solicitudes POST. Para obtener más información sobre curl
, visite la página de documentación de Curl.