2011-09-02 9 views
5

Chcę połączyć się z serwerem WWW (stroną) za pomocą prostego adresu URL, który już zawiera parametry, które chcę wysłać, np .: www.web-site.com/action.php/userid/ 42/secondpara/23 /, a następnie pobrać zawartość strony, która jest generowana przez witrynę (nie będzie morde niż zwykły OK/NOK). Jak mogę to zrobić? Nie udało mi się znaleźć żadnego przykładowego kodu lub dokumentacji, która wydaje się pasować do mojego problemu.Android webrequest proste rozwiązanie

Thx za pomoc.

Odpowiedz

9

spróbuj tego:

public static void connect(String url) 
{ 

    HttpClient httpclient = new DefaultHttpClient(); 

    // Prepare a request object 
    HttpGet httpget = new HttpGet(url); 

    // Execute the request 
    HttpResponse response; 
    try { 
     response = httpclient.execute(httpget); 
     // Examine the response status 
     Log.i("Praeda",response.getStatusLine().toString()); 

     // Get hold of the response entity 
     HttpEntity entity = response.getEntity(); 
     // If the response does not enclose an entity, there is no need 
     // to worry about connection release 

     if (entity != null) { 

      // A Simple JSON Response Read 
      InputStream instream = entity.getContent(); 
      String result= convertStreamToString(instream); 
      // now you have the string representation of the HTML request 
      instream.close(); 
     } 


    } catch (Exception e) {} 
} 

    private static String convertStreamToString(InputStream is) { 
    /* 
    * To convert the InputStream to String we use the BufferedReader.readLine() 
    * method. We iterate until the BufferedReader return null which means 
    * there's no more data to read. Each line will appended to a StringBuilder 
    * and returned as String. 
    */ 
    BufferedReader reader = new BufferedReader(new InputStreamReader(is)); 
    StringBuilder sb = new StringBuilder(); 

    String line = null; 
    try { 
     while ((line = reader.readLine()) != null) { 
      sb.append(line + "\n"); 
     } 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } finally { 
     try { 
      is.close(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
    return sb.toString(); 
}