Cambiar código para enviar argumentos a API - Bash - Pastebin

Cambiar código para enviar argumentos a API - Bash - Pastebin

Recientemente intenté usar el siguiente código para enviar pegar a pastebin.com:

https://github.com/mefuckin/pastebin-shell/blob/master/pbin

Lo que he notado con ese script es que no parece enviar api_user_key. La línea 183 lo tiene listado:

--data "api_user_key=$api_user_key" \

así que pensé que sería sólo cuestión de especificar su valor, como:

api_user_key="VALUE HERE"

y eso lo enviaría a la API. Sin embargo, no estoy seguro de qué hace esa parte del código (parte del código que comienza en 174):

[ $logintopastebin -ne 0 ] && auth_user
api_paste_code=$( cat - )
curl -0 --show-error \
    --data "api_dev_key=$api_dev_key" \
    --data "api_option=paste" \
    --data "api_paste_code=$api_paste_code" \
    --data "api_paste_format=$api_paste_format" \
    --data "api_paste_private=$api_paste_private" \
    --data "api_paste_expire_date=$api_paste_expire_date" \
    --data "api_user_key=$api_user_key" \
    --data-urlencode "api_paste_name=$api_paste_name" \
    --data-urlencode "api_paste_code=$api_paste_code" \
        "$api_url/api_post.php"

¿Esta parte del código significa que todos estos argumentos se enviarán a la API?

Respuesta1

El código envía elapi_user_key . Puede enviar una cadena vacía si la variable no está configurada. Elguioncontiene código para encontrar la clave de usuario consultando el servidor en la función auth_user, pero esa función solo se llama si se establece logintopastebinen un valor distinto de cero al principio o si se pasa una de las opciones -uo -len la línea de comando. Puede anular el valor configurando la variable api_user_keymanualmente después o en lugar de la llamada a auth_user, antes de la llamada a curl, por ejemplo

api_user_key=$(cat ~/.passwords/pastebin/api_user_key)
if [ -z "$api_user_key" ] && [ "$logintopastebin" -eq 0 ]; then
  auth_user
fi
api_paste_code=$( cat - )
curl -0 --show-error \

Si no comprende lo que hace el script, agréguelo set -xcomo segunda línea para que imprima un seguimiento de cada línea a medida que se ejecuta.

información relacionada