Inicie sesión en el sitio usando cURL

Inicie sesión en el sitio usando cURL

Estoy intentando iniciar sesión desde la línea de comando de cURL con el comando

curl --data "nombre de usuario=usuario&contraseña=contraseña&enviar=Iniciar sesión"http://www.ip.com:8080/LoginApplication/Login.jsp

Y después de eso, intenta acceder a la página interior usando

curl http://www.ip.com:8080/LoginApplication/Success.jsp

Pero me redirigen a la página de error porque no he iniciado sesión.

¿Qué me falta en mi primer comando para que pueda mantener la sesión? Tengo mi sitio web alojado localmente

Respuesta1

Bueno, necesitarás almacenar los datos de la sesión en una cookie. Puede utilizarla -c cookie_filenamepara crear la cookie (agregue esto a su comando de inicio de sesión). Y luego, para las otras solicitudes, puede leer la cookie con -b cookie_filename.

Por ejemplo:

curl -s loginpage -c cookiefile -d "user=myself&pass=secure"
curl -s secretpage -b cookiefile

EDITAR:

Fíjate que muchas veces loginpageno es la página que abres con tu navegador web donde introduces tu usuario y contraseña. Tendrá que verificar dónde publica el formulario esos datos (busque la <form>etiqueta en el código fuente y el action=...atributo). Entonces, por ejemplo, si desea iniciar sesión enhttps://criticker.com, loginpageeshttps://www.criticker.com/authenticate.phpy nohttps://www.criticker.com/signin.php, que es el que abres con tu navegador.

Un complemento/extensión de manipulación para su navegador puede ayudarle a encontrar los loginpagedatos correctos y todos los que se publican en él (como campos de entrada ocultos en el formulario).

información relacionada