Salut,
URLConnection ne gère pas les Cookies...
Donc en fait à chaque fois que tu contactes le sites le cookie n'est pas envoyé, ce qui fait que le serveur considère que tu n'est pas connecté...
Il faut renvoyer le(s) Cookie(s) à chaque connection, soit manuellement juste après la création du URLConnection :
1 2
| URLConnection uc = u.openConnection( );
uc.addRequestProperty("Cookie", "Navajo=AVmCibRdmte7Ziw0ibRRLIMeXhFMYMu+jdSecE5Ipso/P/ZUE8tc5S1nrk7iHSYDWaairsfy6WQ-;"); |
(ce qui peut être un peu contraignant en cas de multiple cookies)
Soit, a partir de Java 5.0 en définissant un CookieHandler qui se chargera de stocker et renvoyer tous ces cookies :
CookieHandler.setDefault( tonCookieHandlerInstance );
Le problème c'est que Java 5.0 ne propose aucune implémentation de CookieHandler, et qu'il faudra donc l'implémenter toi même...
En effet seul Java 6 propose une implémentation de base avec CookieManager :
CookieHandler.setDefault( new CookieManager() );
a++
PS : attention car dans ton code tu ne fermes par les flux (lire : Comment libérer proprement les ressources ?)
Partager