PDA

View Full Version : [j2me] HttpConnection accetta solo il primo cookie


W.S.
07-09-2008, 16:12
Ciao a tutti

sto scrivendo un robottino in j2me per automatizzare la visita di una pagina che frequento spesso.
Per accedere a questa pagina va fatta una request che ottiene un 302 come risposta e 2 cookie, il secondo dei quali è l'id della sessione da inviare alla Location ottenuta.

Il problema è che una volta ottenuta la risposta, ciclando brutalmente sugli header:

int i = 0;
String ret = "";
do{
ret = connection.getHeaderFieldKey(i);
if( ret != null )
System.out.println(" [+] " + ret + " - " + connection.getHeaderField(ret));
i++;
}while(ret != null);

stampa 2 "set-cookie" ma entrambi con il valore del primo, il che posso pure capirlo visto che connection.getHeaderField("set-cookie") ritorna una String e non un qualche tipo di collezione. Il problema è che non trovo alcun metodo che mi permetta di accedere al secondo cookie che (ti pareva :() è quello importante.

Conoscete un modo per accedere al secondo cookie? Anche sporco se proprio non c'è alternativa, tipo indagare in modo brutale nell'header ricevuto, gestire a mano la risposta o qualsiasi altro modo che mi permetta di leggerlo...

EDIT: ma non sporca quanto la soluzione peggiore: request via socket

W.S.
07-09-2008, 16:29
al posto di ottenere il campo dalla sua chiave nell'header (set-cookie) va usato l'indice, in pratica basta cambiare

System.out.println(" [+] " + ret + " - " + connection.getHeaderField(i));


al solito, mi preoccupo per nulla :D