/**
* Methode permettant d'envoyer une requete HTTP à une URL en passant par un proxy
* avec des parametres et
* permettant de récupérer le flux de reponse.
*
*@Param String adresse URL distante
*@Param String parametre1
*@Param String parametre2
*/public void EnvoyerRequetePost(String adresse, String param1, String param2){
OutputStreamWriter writer = null;
BufferedReader reader = null;
try {
// on precise le nom du proxy utilisé pour se connecter
// à l'url distante, ainsi que le port.
Properties prop = System.getProperties();
prop.put("http.proxyHost","192.168.0.100");
prop.put("http.proxyPort","80");// Constitution de la requete
//encodage des paramètres de la requête - l'utilisatation de StringBuffres serait plus appropriées
String donnees = URLEncoder.encode("param1", "UTF-8")+ "="+URLEncoder.encode("valeur1", "UTF-8");
donnees += "&"+URLEncoder.encode("param2", "UTF-8")+"=" + URLEncoder.encode("valeur2", "UTF-8");//création de la connection à l'adresse distante
URL url = new URL(adresse);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
//envoi de la requête à l'adresse distante
writer = new OutputStreamWriter(conn.getOutputStream());
writer.write(donnees);
writer.flush();//lecture de la réponse et ecriture dans la log
reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String ligne;
while ((ligne = reader.readLine()) != null) {
System.out.println(ligne);
}
}catch (Exception e) {
// affichage de la trace en cas d'exception
e.printStackTrace();
}finally{
try{
writer.close();
}
catch(Exception e){}
try{
reader.close();
}
catch(Exception e){}
}
}
| Mai 2008 | ||||||||||
| L | M | M | J | V | S | D | ||||
| 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 | |||||
|
||||||||||
Commentaires