Bonjour,
J'ai besoin de récupérer le numéro de Session du cookie PHPSESSID après une identification par formulaire sur un site (elle se fait pas méthode POST).
Voilà comment je procède actuellement pour l'identification :
Comment puis je faire pour recuperer le cookie PHPSESSID après cette requête post ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 post("http://adresse", new String[][] { {"login","Monlogin"}, {"pwd","monPass"} } ); ...... static String post(String adresse,String[][] data){ OutputStreamWriter writer = null; BufferedReader reader = null; String retour = null; try { //encodage des paramètres de la requête String donnees = ""; for(int i=0;i<data.length;i++) { donnees+=URLEncoder.encode(data[i][0], "UTF-8")+"="+URLEncoder.encode(data[i][1], "UTF-8")+((i!=data.length-1)?"&":""); } //création de la connection URL url = new URL(adresse); URLConnection conn = url.openConnection(); conn.setRequestProperty( "User-Agent", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" ); conn.setDoOutput(true); //envoi de la requête writer = new OutputStreamWriter(conn.getOutputStream()); writer.write(donnees); writer.flush(); //lecture de la réponse reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); StringBuilder sb = new StringBuilder(); char[] cbuf = new char[8192]; int len; while ( (len = reader.read(cbuf)) >= 0 ) { sb.append(cbuf, 0, len); } retour = sb.toString(); }catch (Exception e) { e.printStackTrace(); }finally{ try{writer.close();}catch(Exception e){} try{reader.close();}catch(Exception e){} } return retour; }
Merci pour votre aide
Partager