`
zhuqiang5138
  • 浏览: 31633 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

My Android成长之路(三)——【HttpClient】

阅读更多
    
     HttpClient经常在开发的过程中会用到 所以这个是必须掌握的啦
     http请求主要常用的有get请求和post请求,如下:

//import 省略......

public class HttpUtil {
	/**
	 * HttpClient获取get请求的数据
	 * @param url 请求的地址
	 * @return 返回字符串
	 */
	public static String getDataByGet(String url) {
		StringBuilder sb = new StringBuilder();
		HttpClient client = new DefaultHttpClient();
		HttpParams httpParams = client.getParams();

		// 设置网络超时参数
		HttpConnectionParams.setConnectionTimeout(httpParams, 3000);
		HttpConnectionParams.setSoTimeout(httpParams, 5000);

		HttpGet request;
		try {
			// 发出request请求
			request = new HttpGet(url);

			// 返回response响应
			HttpResponse response = client.execute(request);
			
			// 判断请求是否成功
			if (response.getStatusLine().getStatusCode() == 200) {
				HttpEntity entity = response.getEntity();
				if (entity != null) {
                //这边也可以作和post类似的操作 这个只是另一种情况
					BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent(), "UTF-8"),8192);
					String line = null;
					while ((line = reader.readLine()) != null) {
						sb.append(line + "\n");
					}
					reader.close();
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}

		return sb.toString();
	}

	/**
	 * HttpClient获取post请求<br/>
	 * 例子:<br/>
	 * List<NameValuePair > parms=new ArrayList<NameValuePair><br/>
	 * parms.add(new BasicNameValuePair(“str”,"I am Post String”));<br/>
	 * @param url 请求的地址
	 * @param parms 参数
	 * @return
	 */
	public static String getDataByPost(String url, List<NameValuePair> parms) {
		String out = null;
		HttpClient client = new DefaultHttpClient();
		HttpPost request;
		try {
			// 发出request请求
			request = new HttpPost(new URI(url));
			request.setEntity(new UrlEncodedFormEntity(parms, HTTP.UTF_8));

			// 返回response响应
			HttpResponse response = client.execute(request);

			// 判断请求是否成功
			if (response.getStatusLine().getStatusCode() == 200) {
				HttpEntity entity = response.getEntity();
				if (entity != null) {
					out = EntityUtils.toString(entity);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		return out;
	}
}



分享到:
评论

相关推荐

    Spring 实现远程访问详解——httpclient

    本章将通过apache httpclient实现远程访问。说得简单就是直接通过spring requestmapping即请求映射url访问远程服务。 1. 远程访问流程 1) 服务器在控制器定义远程访问请求映射路径 2) 客户端通过apache httpclient的...

    java后台访问url需要的包——httpclient方式

    java后台访问url需要的包,没时间好好整理,包可能多几个

    Android HttpClient用到的jar包

    本篇将详细讲解如何利用Apache HttpClient及其相关的jar包在Android环境中进行文件上传。 首先,我们关注的是标题提到的两个jar包:“apache-mime4j-0.6.jar”和“httpmime-4.0.jar”。这两个jar包是HttpClient库的...

    android HttpClient

    虽然Android原生的`HttpClient`已被弃用,但仍有第三方库如Apache HttpClient(如文件中的httpcomponents-client-4.2.5)提供支持。这些库不仅维护了`HttpClient`的功能,还添加了更多特性,如更好的连接管理、错误...

    Android HttpClient工具类

    本篇文章将深入探讨Android HttpClient的基本使用方法,帮助开发者理解和应用这个工具。 首先,我们来了解HttpClient的核心组件: 1. **HttpClient实例**:这是所有操作的基础,通过`HttpClient client = new ...

    Android HttpClient源码

    在这个"Android HttpClient源码"中,我们可以深入理解其内部工作原理,并学习如何在Android应用中有效地使用它。 首先,HttpClient的核心类是`HttpClient`,它是整个HTTP客户端操作的管理者。通过`HttpClient`,...

    Android Httpclient Proxy Test

    在Android API 19(KitKat)及以下版本,HttpClient是内置支持的,但在更高的版本中已被弃用,但仍然可以通过引入第三方库来使用。 1. **配置HttpClient**: 在Android中,我们需要先创建一个`HttpClient`实例,...

    Android-异步HttpClient框架

    Android-异步HttpClient框架,采用两种提交方式 Android-异步HttpClient框架(get和post) Android-异步HttpClient框架 csdn博客地址:http://blog.csdn.net/u014657752

    android4.0网络编程详解——源码

    在Android中,主要通过HttpURLConnection和HttpClient进行网络请求。了解这两种方式的工作原理、异同及其优缺点至关重要。HttpURLConnection是Android 5.0后推荐使用的API,它更现代且效率更高;而HttpClient虽然在...

    Android升级后旧版本的httpclient4.0

    Android升级后旧版本的httpclient4.0 apache-mime4j-0.6 commons-codec-1.4 commons-logging-1.1.1 httpclient-4.0.1 httpcore-4.0.1 httpmime-4.0.1

    httpclient jar包——相关jar

    httpclient jar包——相关jar,用于http相关开发! httpclient jar包——相关jar,用于http相关开发! httpclient jar包——相关jar,用于http相关开发!

    Http(get)请求数据Android Studio使用HttpClient

    在Android Studio中,虽然从API 23开始官方不再推荐使用`HttpClient`,因为它已被弃用,但仍有开发者因为其易用性和灵活性选择继续使用。 ## 2. 添加HttpClient依赖 由于Android Studio默认不再包含`HttpClient`,...

    android httpClient

    然而,从Android API 23(Marshmallow)开始,HttpClient被标记为废弃,推荐使用Android的HttpURLConnection或者其他的第三方库如OkHttp、Retrofit等。尽管如此,对于理解Android网络编程的基础和历史,HttpClient...

    android httpclient demo

    在Android开发中,HTTP通信是应用与服务器交互的重要方式之一,`Android HttpClient`库就是用于实现这一功能的工具。本文将深入探讨如何使用`Android HttpClient`进行HTTP请求,包括GET、POST、PUT和DELETE等常见...

    Android HttpClient与Json解析

    在Android中,`AsyncTask`是最常见的异步处理工具之一。`AsyncTask`定义了三个泛型参数,分别代表输入参数类型、进度更新参数类型和结果参数类型。为了在后台执行HTTP请求并更新UI,你可以创建一个继承自`AsyncTask`...

    httpclient-android.jar

    为了解决android org.apache.http.legacy 包已有的http和httpclient4.3以上版本冲突。使用时将 org.apache.http包下的资源替换成 org.apache.http4即可。如: import org.apache.http4.client.HttpClient; import ...

    Android的HttpClient开发实例

    在Android应用开发中,`HttpClient`是一个常用的网络通信库,尤其在早期的Android版本中,它是推荐的HTTP通信方式之一。本开发实例将带你深入理解如何在Android项目中使用`HttpClient`进行网络请求,实现数据的获取...

    android 中 httpclient源码

    是android的jar中httpclient的源码,是org.apache.http包的源码。其中包含org.apache.http.HttpResponse类。 不是官网上下载的,官网上的源码里面没有org.apache.http.HttpResponse这个类。

    Android源码之用HttpClient获取网页

    由于Android API 23以上版本已经移除了对HttpClient的支持,因此如果使用的是新版本的Android SDK,我们需要添加第三方依赖或使用其他网络库如OkHttp、Retrofit等。但为了讲解HttpClient的用法,我们将假设你的项目...

    Android代码-httpclient-android

    httpclient-android Build script and dependencies to create repackaged upstream version of HttpClient and depdendencies (HttpMime, HttpCore, HttpClient-Cache) and get it working on Android API version...

Global site tag (gtag.js) - Google Analytics