Problème sur une requête Http méthode POST
EDIT : RÉSOLU
Bonjour,
J'effectue une requête Http à un fichier php mais en réponse je recois ca dans le log.
Citation:
02-13 10:21:34.287: E/http réponse(312): org.apache.http.message.BasicHttpResponse@43e851e8
Pourriez-vous me dire à quoi cela correspond et comment contourner ce problème ?
Voici mon code de test :
Code:
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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
package com.connexionserveur;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import android.os.AsyncTask;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
new ProtocoleHTTPTask().execute();
}
private class ProtocoleHTTPTask extends AsyncTask<String, Void, String>
{
@Override
protected void onPreExecute() {
super.onPreExecute();
Toast.makeText(getApplicationContext(), "Début du traitement asynchrone", Toast.LENGTH_LONG).show();
}
@Override
protected String doInBackground(String... urls) {
// On créé un client http
HttpClient httpclient = new DefaultHttpClient();
// On créé notre entête
HttpPost httppost = new HttpPost("http://www.tonsite.com/script.php");
try {
// On ajoute nos données dans une liste
List<BasicNameValuePair> nameValuePairs = new ArrayList<BasicNameValuePair>(2);
// On ajoute nos valeurs ici un identifiant et un message
nameValuePairs.add(new BasicNameValuePair("pseudo", "root"));
nameValuePairs.add(new BasicNameValuePair("password", "test"));
// Ajoute la liste à notre entête
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// On exécute la requête tout en récupérant la réponse
HttpResponse response = httpclient.execute(httppost);
return response.toString();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
return "Error";
} catch (IOException e) {
// TODO Auto-generated catch block
return "Error";
}
}
@Override
protected void onPostExecute(String result) {
Log.e("http réponse",result);
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_LONG).show();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
} |