Advertisement
Guest User

[ Android Entwicklung ] POST Anfrage an Webserver und parsen

a guest
Apr 19th, 2012
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.24 KB | None | 0 0
  1. package com.halal.helalcheck;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.InputStreamReader;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7.  
  8. import org.apache.http.HttpEntity;
  9. import org.apache.http.HttpResponse;
  10. import org.apache.http.NameValuePair;
  11. import org.apache.http.client.HttpClient;
  12. import org.apache.http.client.entity.UrlEncodedFormEntity;
  13. import org.apache.http.client.methods.HttpPost;
  14. import org.apache.http.impl.client.DefaultHttpClient;
  15. import org.apache.http.message.BasicNameValuePair;
  16. import org.json.JSONArray;
  17. import org.json.JSONObject;
  18.  
  19. import android.app.Activity;
  20. import android.os.Bundle;
  21. import android.util.Log;
  22.  
  23. public class HalalcheckActivity extends Activity {
  24.     /** Called when the activity is first created. */
  25.     String TAG = "meinDebug";
  26.     @Override
  27.     public void onCreate(Bundle savedInstanceState) {
  28.         super.onCreate(savedInstanceState);
  29.         setContentView(R.layout.main);
  30.  
  31.         String ean_Att = parseJSONPost("data", "ean");
  32.         String name_Att = parseJSONPost("data", "name");
  33.         String level_Att = parseJSONPost("data", "level");
  34.         String content_Att = parseJSONPost("data", "content");
  35.  
  36.         String countProducts = parseJSONPost("count", null);
  37.  
  38.         Log.i(TAG, "EAN-Code: " + ean_Att);
  39.         Log.i(TAG, "Name: " + name_Att);
  40.         Log.i(TAG, "Level: " + level_Att);
  41.         Log.i(TAG, "Content: " + content_Att);
  42.         Log.i(TAG, "Anzahl der Produkte: " + countProducts);
  43.  
  44.     }
  45.  
  46.  
  47.     // Parse JSON Anfrage
  48.     public String parseJSONPost(String dataTyp, String dataAttribute) {
  49.  
  50.         String productAttribute = null;
  51.         String count_string = null;
  52.         String readProductDb = readProductDb();
  53.         Log.i(TAG, readProductDb);
  54.         try {
  55.             JSONObject jsonObject = new JSONObject(readProductDb);
  56.             //Log.i(TAG, "Number of entries " + jsonObject.length());
  57.             JSONArray dataArray = jsonObject.getJSONArray("data");
  58.             int count = jsonObject.getInt("count");
  59.  
  60.             count_string = Integer.toString(count);
  61.             JSONObject jsonProductData = dataArray.getJSONObject(0);
  62.             if (dataAttribute != null) {
  63.                 productAttribute = jsonProductData.getString(dataAttribute);
  64.             }
  65.  
  66.         } catch (Exception e) {
  67.             e.printStackTrace();
  68.         }
  69.         if (dataTyp == "data" ) {
  70.             return productAttribute;
  71.         }
  72.         else {
  73.             return count_string;
  74.         }
  75.  
  76.     }
  77.  
  78.     // POST Anfrage an Webserver
  79.     public String readProductDb() {
  80.         StringBuilder sb1 = new StringBuilder();
  81.         try {
  82.             // Create a new HttpClient and Post Header
  83.             HttpClient httpclient = new DefaultHttpClient();
  84.             HttpPost httppost = new HttpPost("http://nur-efsan.de/websHalalCheck/public/index/advancequest/");
  85.             // Add your data
  86.             List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
  87.             nameValuePairs.add(new BasicNameValuePair("productName", "7622300202286"));
  88.             httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
  89.             // Execute HTTP Post Request
  90.             HttpResponse response = httpclient.execute(httppost);
  91.             HttpEntity entity = response.getEntity();
  92.             // convert stream to String
  93.             BufferedReader buf = new BufferedReader(new InputStreamReader(entity.getContent()));
  94.             String line = null;
  95.             while ((line = buf.readLine() ) != null) {
  96.                 sb1.append(line+"\n");
  97.             }
  98.         } catch (Exception e) {
  99.             // TODO Auto-generated catch block
  100.         }
  101.         return sb1.toString();
  102.     }
  103.  
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement