(EDIT : Je ne sais pas si je suis dans le bon forum finalement, n'hésitez pas à me déplacer si jamais )
Salut à tous,
Je travaille sur un projet Java et j'ai besoin d'envoyer des paramètres (du texte) à une page php. Au départ, je passais tout en GET, mais mes parametres étant trop longs, ça ne marchait pas.
Je cherche donc à les passer en POST mais la page php ne récupère aucun paramètre (j'ai rajouter un var_dump($_POST) au début de la page pour les tests).
Est-ce que quelqu'un aurait une idée pour m'aider ?
Voilà mon code :
La partie qui appelle la méthode callWS() :
La méthode callWS :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 String url = WS.ADDTAG.getValue(); String nni = Base64.encodeBase64String(ControllerUtilisateur.getUser().getNni().getBytes()); String tagUrl = Base64.encodeBase64String(this.toFormatURL(tag).getBytes()); String param = PARAM.NNI.getValue() + nni + PARAM.AND.getValue() + PARAM.TAG.getValue() + tagUrl; System.out.println("[TagRepository] url : "+url); // Ca m'affiche la bonne url : http://*********.fr/*****.php String reponse = WebServiceHelper.callWs(new URL(url),param);
Merci d'avance !
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 public static String callWs(URL url,String postParam){ try { HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); System.out.println("\n[WebServiceHelper] postParam : "+postParam); // M'affiche bien les parametres que je veux : id=RDM4MTcz&tag=NDQuMjc2NjcxMjczNzc1MTg2LC0wLjI4MDE1MTM2NzE4NzUsNDUuMDU4MDAxNDM1Mzk4MjcsMC44MTg0ODE0NDUzMTI1LDQ0LjY2ODY1Mjg3MjI3MzIxOzAuMjY5MTY1MDM5MDYyNSwsLDcsMCwsLCws OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream()); writer.write(postParam); writer.flush(); // Réponse BufferedInputStream input = new BufferedInputStream(conn.getInputStream()); StringBuilder str = new StringBuilder(); //Parcour du buffer et construction d'une chaine de caractere for(int c = input.read(); c!= -1; c= input.read()){ char current = (char)c; str.append(current); } //Fermeture du buffer input.close(); conn.disconnect(); return str.toString(); } catch (Exception e) { e.printStackTrace(); return "ERROR"; } }
Partager