es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Bash: Cómo pasar una cookie en formato JSON a curl.

Estoy teniendo dificultades para adjuntar un archivo JSON de cookies a una solicitud curl en bash.

Sé que se puede hacer con cookie.txt, pero dado que lo tengo en el siguiente formato:

{"provisioning": "61d83f29bda251.85229990"}

La solicitud curl es:

curl -k -v -b cookie.json -F name=csr -F filedata=@${CSRFILE} https://prov.is.byl.com/cert_signer.php >${CRTFILE}

¿Es posible enviarlo de esta manera en lugar de tener que hacerlo así?:

curl -k -v -b 'provisioning=61d83f29bda251.85229990' -F name=csr -F filedata=@${CSRFILE} https://prov.is.byl.com/cert_signer.php >${CRTFILE}

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para adjuntar un archivo JSON de cookies a una solicitud curl en bash, puedes usar la opción -b seguida de la ruta al archivo de cookies. Sin embargo, dado que tu archivo de cookies está en formato JSON en lugar del formato de texto estándar, puedes usar la opción -b seguida de una cadena con los datos de la cookie en el formato requerido.

    Para lograr esto, puedes usar el comando jq para extraer el valor de la cookie del archivo JSON y formar la cadena de cookie en el formato requerido. Aquí tienes un ejemplo:

    COOKIE=$(cat cookie.json | jq -r '.provisioning' | sed 's/^/provisioning=/')
    curl -k -v -b "${COOKIE}" -F name=csr -F filedata=@${CSRFILE} https://prov.is.byl.com/cert_signer.php >${CRTFILE}
    

    En este ejemplo, usamos el comando cat para leer el archivo JSON de cookies y pasarlo al comando jq que extrae el valor de la clave provisioning. Luego, usamos sed para agregar la cadena provisioning= al valor extraído y almacenar la cadena resultante en la variable COOKIE.

    Finalmente, pasamos esta variable a la opción -b del comando curl para adjuntar la cookie a la solicitud en el formato requerido.

    Esto debería permitirte adjuntar un archivo JSON de cookies a una solicitud curl en bash.

Comments are closed.