Ver Mensaje Individual
  #8 (permalink)  
Antiguo 05/08/2011, 13:37
iovan
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Loguear en foro Foroactivo desde Java

Hola que extraño crei que te habia respondido, creo que te respondi en el tema de otro usuario haha como abro todas las nuevas notificaciones en pestañas haha.

Bueno ahi te va de nuevo.

Lo que pasa es que no se obtiene acceso a las cookies o sesiones del navegador, porque el código java no se está ejecutando en el navegador.

Yo creo que lo mas conveniente será hacer la segunda opcion, la que marque con un asterisco

Sobre el código que te he dado, yo lo hice pensando en un ejemplo no pensando en que lo fueras a usar, bueno tan solo es para darte una idea de como puedes leer el código fuente una vez obtenido todo el proceso. Te recomiendo lo codifiques tu desde el principio conciderando tus necesidades

Te dire la metodología que yo usaría para resolver éste problema.

>>> Nivel de complejidad : media.

1.- Creas tu formulario en tu aplicacion Java y solicitas username y password.
2.- Vas (desde InputStreamReader) a la direccion de tu foro que contiene el formulario del login para obtener el valor de las llaves de los campos ocultos del formulario que realiza el login (SOLO en caso de que existan estas llaves, esto depende de la version del foro y tipo, por ejemplo si es version PHPbb2 no usa estas llaves y por lo tanto has caso omiso de este punto.)

3.- Comienzas a utilizar este nombre de usuario y password para mandarlo por post a la direccion que indica el formulario del login, controlando las posibles redirecciones,

Esto es la parte de mayor complejidad, ya que deverás observar el flujo para identificar las redirecciones para que al momento de obtener el código fuente lo obtengas del documento final y no de uno anterior.

Te comentaré con más detalle esto mas abajo.

4.- Por ultimo, deberás leer el código fuente y valerte de las funciones para extraer cadenas en java, y encontrar una linea que muestre el nombre de usuario o el mensaje de error.

Depende de lo que recibas podrás ver si se ha hecho sesion o no.
---------------------------------------------

Te platico, yo esto lo había hecho en PHP como te comento hace varios años, En php es facilisimo utilizando la funcion gets_file_open y las redirecciones que esta funcion ofrece.

En java, esto de las redirecciones no se si existan, si es posible o no. Pero supongo que si.

Si no es así, hay 1 forma que se me ocurren para darles control a las redirecciones aunque sería algo bastante rebuscado y codificarlo... tan interesante como desactivar una bomba.

Habrás notado la exageración y el drama en esto último, solo es una pequeña broma no hay de que asustarse.

Si se puede hacer, de una o de otra forma - Asi que tampoco hay problema.

Ciertamente es un proyecto entretenido, en la investigación te podrías llevar semanas.

Pero bueno, adelante.

P.D: Si lo haces en PHP huy, te tardas menos de 15 minutos, al rededor de 5 lineas de código para el motor y bueno el resto para buscar la cadena que intereza como por ejemplo: la que da en HTML la bienvenida al usuario con sesión iniciada.

Código PHP:
Ver original
  1. <p> Bienvenido <b>Usuario</b></p>

Si sabes PHP y tienes la posibilidad de comunicarte desde tu aplicacion Java a un script de PHP te aseguro que facilitas las cosas en un gran porcentaje.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.