Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/10/2012, 08:23
jav_000
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 13 años, 3 meses
Puntos: 29
Respuesta: Ejecutar login a web con usuario y password usando java

Sería un login mediante POST a una web con cookies. Te pego el código que tengo hecho. Mi objetivo sería hacer login en la página, obtener las cookies, luego moverme a la zona de descargas, y finalmente bajarme el archivo. Muchas gracias por la ayuda.

Código PHP:
URL login = new URL("...");
URL descargas = new URL("...");
URL documento new URL("...");

//La cadena que se utiliza para hacer la peticion
String data_post "nombre_usuario=prueba&clave=1234&otro_dato=...";

//Me conecto con la pagina de login
HttpURLConnection conn = (HttpURLConnection)login.openConnection();
conn.setDoOutput(true); //para las cookies
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data_post);
wr.close();
conn.connect();

//Voy hacia la pagina de descargas
HttpURLConnection connDescargas = (HttpURLConnection)descargas.openConnection();
connDescargas.connect();

//Intento bajarme el archivo
HttpURLConnection connBajarArchivo = (HttpURLConnection)documento.openConnection();
connBajarArchivo.connect();

BufferedInputStream in = new BufferedInputStream(conexionConsumo.getInputStream());

File saveFile = new File("mi_archivo.txt");
OutputStream out = new BufferedOutputStream(new FileOutputStream(saveFile));
byte[] buf = new byte[256];
int n 0;
while ((
n=in.read(buf))>=0) {
   
out.write(buf0n);
}
out.flush();
out.close();