Voilà, mon problème : dans ma servlet, je dois accéder à une site via une url et passer 2 paramètres dans la requête. Mais les 2 paramètres doivent être dans le corp de la requête (POST) et non dans l'en tête (GET). Je me dis que comme dans l'objet HttpURLConnection, on peut déterminer la méthode "GET" ou "POST", je vais utiliser cette connection. Le problème, c'est que quand je set mes paramètres via la méthode :
connection.setRequestProperty("nomDuChamp1", "valeurDuChamp1" );
et que j'explore l'objet connection, je vois mes paramètres dans "requests= MessageHeader (ID=213733852)
", ce qui pue le passage en en-tête. D'ailleurs, le site que j'appelle me dit que je ne lui passe rien en paramètre.
Si quelqu'un a déjà rencontré le problème, ou alors aurait une astuce, je suis preneur .
Code :
- URL url = new URL("lAdresseDeMonSite" );
- HttpURLConnection connection = (HttpURLConnection)url.openConnection();
- connection.setRequestMethod("POST" );
- connection.setRequestProperty("nomDuChamp1", "valeurDuChamp1" );
- connection.setRequestProperty("nomDuChamp2", "valeurDuChamp2" );
- DataInputStream input = new DataInputStream(connection.getInputStream());
- for(int c=input.read() ; c!=-1 ; c=input.read()){
- System.out.print((char)c);
- }
- input.close();
|