HttpClient是Apache提供的HTTP网络访问接口,很早就被引入到了Android API中。它可以完成和HttpURLConnection几乎相同的效果,但两者之间的用法却有较大的差别。
HttpClient是一个接口,通常是创建一个DefaultHttpClient对象
HttpClient httpClient = new DefaultHttpClient();
接下来如果想要发起一个GET请求,可以创建一个HttpGet 对象,并传入目标网络地址,然后调用HttpClient的execute()方法
HttpGet httpGet = new HttpGet("http://www.baidu.com");
HttpResponse httpResponse = httpClient.execute(httpGet);
执行execute()方法之后会返回一个HttpResponse对象,服务器所返回的所有信息就会包含在这里面。常情况下我们都会先取出服务器返回的状态码,如果等于200就说明请求和响应都成功了
if(httpResponse.getStatusLine().getStatusCode()==200){
//请求和响应都成功了 }
之后在if判断的内部取出服务返回的具体内容,可以调用getEntity()方法获取到一个HttpEntity实例,然后再用EntityUtils.toString()这个静态方法将HttpEntity转换成字符串,还可以设置字符编码。
HttpEntity entity=httpResponse.getEntity();
String response = EntityUtils.toString(entity,"utf-8");
示例代码为version1.0