Datos Urlencode para el comando Curl en Bash

Dr. Muhammad Abdullah 20 junio 2023
Datos Urlencode para el comando Curl en Bash

El curl es una utilidad de línea de comandos de Linux que transfiere datos de una máquina a otra. Puede trabajar con múltiples protocolos, incluyendo HTTP, DICT, FILE, FTP, FTPS, IMAP, IMAPS, POP3, etc.

Este artículo enseñará cómo podemos urlencode datos para el comando curl en bash. Comencemos con la sintaxis del comando curl.

el comando curl en Bash

La sintaxis básica del comando curl es la siguiente:

curl [URL] [option]

Ejemplo:

curl http://example.com

Este comando muestra el contenido de http://example.com en la terminal de Linux.

Opciones del comando curl

Podemos usar múltiples opciones con el comando curl. Generalmente, las opciones comienzan con un guión (-) o dos guiones (--). Por ejemplo, el comando curl con una opción se puede escribir de la siguiente manera:

curl -L [URL]

Un comando curl con múltiples opciones se puede escribir de la siguiente manera:

curl -ELb [URL]

O

curl -E -L -b [URL]

Opción curl -d o --data

La opción -d o --data con el comando curl se utiliza para enviar datos al servidor como una solicitud POST. Por ejemplo:

curl -d "p1=v1&p2=v2" [URL]

O

curl --data "p1=v1&p2=v2" [URL]

Este comando envía datos a la URL dada. Por ejemplo, el valor del parámetro p1 es v1, y el valor del parámetro p2 es v2, que se envía al servidor. Estos parámetros se envían en formato binario puro.

curl admite un formato diferente para enviar los datos al servidor. Por ejemplo:

  1. --data-ascii funciona igual que la opción -d o --data.
  2. La opción --data-binary se usa para enviar datos POST en el formato real como se especifica en el comando sin procesamiento.
  3. La opción --data-urlencode envía datos POST al servidor mediante la codificación de URL.

Datos de codificación URL desde el comando curl

curl con --data-urlencode se usa para enviar datos al servidor mediante la codificación de URL.

Por ejemplo:

curl --data-urlencode "p1=v1" [URL]

El comando anterior curva la URL y pasa el valor del parámetro p1 v1 en la forma codificada de URL. Este comando codifica en URL el valor v1 y espera que p1 ya esté en formato URL codificado.

Podemos usar esta opción de curl con curl 7.18.0 o superior. Por ejemplo, para verificar la versión del comando curl, podemos usar curl -V.

El comando curl con la opción --data-urlencode se puede utilizar en múltiples formatos. Por ejemplo:

  1. curl --data-urlencode =content [URL]
    

    Este comando codificará en URL el contenido y lo enviará en el POST. El = no está incluido en los datos.

  2. curl --data-urlencode name@file [URL]
    

    Este comando codificará en URL los datos del archivo dado y los enviará en el POST. El comando asume que el nombre ya está en formato URL codificado.

  3. curl --data-urlencode @file [URL]
    

    Este comando codificará en URL los datos del archivo dado y los enviará en el POST.