package com.infodat.selltis2; import android.util.Log; import com.infodat.selltis2.utils.Constants; import com.infodat.selltis2.utils.Utils; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import java.util.HashMap; import java.util.Map; import javax.net.ssl.HttpsURLConnection; public class HttpWebServiceHandlerSample { static String response = null; public HttpWebServiceHandlerSample() { } /** * Making service call * * @url - url to make request * @method - http request method * @params - http request params */ // Get Request using HttpURLConnection Code public String makeGetServiceCall(String requestURL, HashMap<String, String> postDataParams) { InputStream inputStream = null; HttpURLConnection conn = null; String response = ""; try { /* forming th java.net.URL object */ String newRequestURL = requestURL + getQueryString(postDataParams); URL url = new URL(newRequestURL); Log.i("URL ", newRequestURL); conn = (HttpURLConnection) url.openConnection(); /* optional request header */ conn.setRequestProperty("Content-Type", "application/json"); /* optional request header */ conn.setRequestProperty("Accept", "application/json"); // urlConnection.setConnectTimeout(100000); /* for Get request */ conn.setRequestMethod("GET"); int statusCode = conn.getResponseCode(); /* 200 represents HTTP OK */ if (statusCode == 200) { inputStream = new BufferedInputStream(conn.getInputStream()); response = convertInputStreamToString(inputStream); } else { response = Constants.NetWorkErrorMSG; } } catch (Exception e) { // Log.i("Selltis N/w Error", e.getLocalizedMessage()); response = Constants.NetWorkErrorMSG; } finally { if (conn != null) conn.disconnect(); } Log.i("RESPONSE", response); return response; // return response } // Convert all key/Value pairs to URL request parameters private String getQueryString(HashMap<String, String> params) throws UnsupportedEncodingException { StringBuilder result = new StringBuilder(); boolean first = true; for (Map.Entry<String, String> entry : params.entrySet()) { if (first) first = false; else result.append("&"); result.append(URLEncoder.encode(entry.getKey(), "UTF-8")); result.append("="); result.append(URLEncoder.encode(entry.getValue(), "UTF-8")); } return result.toString(); } // convert InputStream to String private String convertInputStreamToString(InputStream inputStream) throws IOException { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); String line = ""; String result = ""; while ((line = bufferedReader.readLine()) != null) { result += line; } /* Close Stream */ if (null != inputStream) { inputStream.close(); } return result; } // POST Request using HttpURLConnection Code public String makePostServiceCall(String requestURL, String postJosnData) { InputStream inputStream = null; URL url; String response = ""; HttpURLConnection conn = null; try { url = new URL(requestURL); conn = (HttpURLConnection) url.openConnection(); conn.setReadTimeout(10000); conn.setConnectTimeout(10000); conn.setRequestMethod("POST"); conn.setDoInput(true); conn.setDoOutput(true); /* optional request header */ conn.setRequestProperty("Content-Type", "application/json"); /* optional request header */ conn.setRequestProperty("Accept", "application/json"); OutputStream os = conn.getOutputStream(); BufferedWriter writer = new BufferedWriter( new OutputStreamWriter(os, "UTF-8")); writer.write(postJosnData); // Log.i("POST URL", url.toString()); // Log.i("POST DATA", postJosnData); writer.flush(); writer.close(); os.close(); int responseCode = conn.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { inputStream = new BufferedInputStream(conn.getInputStream()); response = convertInputStreamToString(inputStream); } else { response = Utils.ServerErrorMessage; } } catch (Exception e) { // Log.i("Selltis N/w Error", e.getLocalizedMessage()); response = Utils.ServerErrorMessage; } finally { if (conn != null) conn.disconnect(); } return response; } }
Its all about , Latest Android App Development for Phones/Tablets, showing Step by step development Tutorials for beginners, Professionals android developers,Best Practices, Latest android code patterns, UI design Patterns
Friday, 27 November 2015
Android HttpURLConnection code for GET and POST Methods
Subscribe to:
Posts (Atom)