http协议实例

1. 通过 GET 请求获取数据

/**
* Sends an HTTP GET request to a url
* @param endpoint
* - The URL of the server. (Example:
* " http://www.yahoo.com/search")
* @param requestParameters
* - all the request parameters (Example:
* "param1=val1&param2=val2"). Note: This method will add the
* question mark (?) to the request - DO NOT add it yourself
* @return - The response from the end point
*/
public static String sendGetRequest(String endpoint,
String requestParameters) {
	Log.i("sendGetRequest", endpoint);
	String result = null;
	if (endpoint.startsWith("http://")) {
	// Send a GET request to the servlet
	try {
		// Construct data
		StringBuffer data = new StringBuffer();
		// Send data
		String urlStr = endpoint;
		if (requestParameters != null && requestParameters.length() > 0) {
			urlStr += "?" + requestParameters;
		}
		Log.i("urlStr", urlStr);
		URL url = new URL(urlStr);
		URLConnection conn = url.openConnection();
		// Get the response
		BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
		StringBuffer sb = new StringBuffer();
		String line;
		while ((line = rd.readLine()) != null) {
			sb.append(line);
		}
		rd.close();
		result = sb.toString();
	} catch (Exception e) {
		e.printStackTrace();
	}}
	Log.i("sendGetRequest", result);
	return result;
}

2. 获取网上图片并转换格式

public static Bitmap returnBitMap(String url) {
	Log.i("returnBitMap", "url=" + url);
	URL myFileUrl = null;
	Bitmap bitmap = null;
	try {
		myFileUrl = new URL(url);
	} catch (MalformedURLException e) {
		e.printStackTrace();
	}
	try {
		HttpURLConnection conn = (HttpURLConnection) myFileUrl
		.openConnection();
		conn.setDoInput(true);
		conn.connect();
		InputStream is = conn.getInputStream();
		bitmap = BitmapFactory.decodeStream(is);
		is.close();
	} catch (IOException e) {
		e.printStackTrace();
	}
	return bitmap;
}

3. 通过 POST 提交数据

public void MyFunction{
	HttpClient httpclient = new DefaultHttpClient();
	// 你的 URL
	HttpPost httppost = new HttpPost("http://www.eoeandroid.com/post_datas.php");
	try {
		List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
		//Your DATA
		nameValuePairs.add(new BasicNameValuePair("id", "12345"));
		nameValuePairs.add(new BasicNameValuePair("stringdata", "eoeAndroid.com is Cool!"));
		httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
		HttpResponse response;
		response=httpclient.execute(httppost);
	} catch (ClientProtocolException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}
 

相关推荐