También es posible que desee iniciar sesión a través del navegador y obtener el comando con todos los encabezados, incluidas las cookies:
Abra la pestaña Red de Herramientas para desarrolladores, inicie sesión, navegue a la página necesaria, use "Copiar como cURL".
Es probable que el sitio web utilice cookies para almacenar la información de su sesión. Cuando corres
curl --user user:pass https://xyz.example/a #works ok
curl https://xyz.example/b #doesn't work
curl
se ejecuta dos veces, en dos sesiones separadas. Por lo tanto, cuando se ejecuta el segundo comando, las cookies configuradas por el primer comando no están disponibles; es como si hubiera iniciado sesión en la página a
en una sesión del navegador e intenté acceder a la página b
en otro diferente.
Lo que tienes que hacer es guardar las cookies creadas por el primer comando:
curl --user user:pass --cookie-jar ./somefile https://xyz.example/a
y luego vuelva a leerlos cuando ejecute el segundo:
curl --cookie ./somefile https://xyz.example/b
Alternativamente, puede intentar descargar ambos archivos en el mismo comando, que creo que usará las mismas cookies.
Después de buscar en Google encontré esto:
curl -c cookie.txt -d "LoginName=someuser" -d "password=somepass" https://oursite/a
curl -b cookie.txt https://oursite/b
No tengo idea si funciona, pero podría llevarte en la dirección correcta.