Requête HTTP avec Andoid 2.1

Bonjour à tous!

Après cette longue absence, je vais aujourd’hui revenir en douceur avec un tutoriel expliquant comment réaliser une requête HTTP GET avec Android 2.1 et en récupérer la réponse pour la traiter.

Pour réaliser une telle prouesse technique, il nous suffira de connaître trois types d’objets : BasicHttpParams (les paramètres qui seront passés à la requête HTTP), DefaultHttpClient (le client HTTP que l’on souhaite utiliser) et HttpGet (qui nous permettra de réaliser une requête GET).

StringBuffer stringBuffer = new StringBuffer("");
BufferedReader bufferedReader = null;

try{
	//Création d'un DefaultHttpClient et un HttpGet permettant d'effectuer une requête HTTP de type GET
	HttpClient httpClient = new DefaultHttpClient();
	HttpGet httpGet = new HttpGet();

	//Création de l'URI et on l'affecte au HttpGet
	URI uri = new URI(url);
	httpGet.setURI(uri);

	//Execution du client HTTP avec le HttpGet
	HttpResponse httpResponse = httpClient.execute(httpGet);

	//On récupère la réponse dans un InputStream
	InputStream inputStream = httpResponse.getEntity().getContent();

	//On crée un bufferedReader pour pouvoir stocker le résultat dans un string
	bufferedReader = new BufferedReader(new InputStreamReader(inputStream));

	//On lit ligne à ligne le bufferedReader pour le stocker dans le stringBuffer
	String ligneCodeHTML = bufferedReader.readLine();
	while (ligneCodeHTML != null){
		stringBuffer.append(ligneCodeHTML);
		stringBuffer.append("n");
		ligneCodeHTML = bufferedReader.readLine();
	}

}catch (Exception e){
	Log.e("Log : ", e.getMessage());
}finally{
	//Dans tous les cas on ferme le bufferedReader s'il n'est pas null
	if (bufferedReader != null){
		try{
			bufferedReader.close();
		}catch(IOException e){
    		Log.e("Log : ", e.getMessage());
		}
	}
}