chobo2 chobo2 - 2 years ago 146
Java Question

How to print out returned message from HttpResponse?

I have this code on my Android phone.

URI uri = new URI(url);
HttpPost post = new HttpPost(uri);
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(post);

I have a webform application that has in the page load this

Response.Output.Write("It worked");

I want to grab this Response from the HttpReponse and print it out. How do I do this?

I tried
but it just seems to print out the address in memory.


Answer Source

Use ResponseHandler. One line of code. See here and here for sample Android projects using it.

public void postData() {
    // Create a new HttpClient and Post Header
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("");

    try {
        // Add your data
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
        nameValuePairs.add(new BasicNameValuePair("id", "12345"));
        nameValuePairs.add(new BasicNameValuePair("stringdata", "AndDev is Cool!"));
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

        // Execute HTTP Post Request
        ResponseHandler<String> responseHandler=new BasicResponseHandler();
        String responseBody = httpclient.execute(httppost, responseHandler);
        JSONObject response=new JSONObject(responseBody);
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block

add combination of this post and complete HttpClient at -

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download