注:使用这种方式实现必须在当前module下的builder.gradle,文件中Android{
useLibrary 'org.apache.http.legacy'
}添加声明,因为HttpClient已经过时官方不建议使用。
//核心代码如下(功能实现的工具类):
package com.example.mhttpclient; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import java.io.IOException; /** * author:Created by GengShiCong on 2017/10/8. */ public class HttpClientTools { //获取网络Json数据,参数是(请求数据的网址) public static String getJson(String urlJson) { //获取HttpClient对象 DefaultHttpClient defaultHttpClient = new DefaultHttpClient(); //获取请求网络数据方式 HttpGet httpGet = new HttpGet(urlJson); try { //通过HttpClient对象访问网络请求数据 HttpResponse httpResponse = defaultHttpClient.execute(httpGet); //获取响应行上的响应码 int statusCode = httpResponse.getStatusLine().getStatusCode(); //判断数据是否响应成功 if (statusCode == 200) { //响应成功通过.getentity获取数据 HttpEntity entity = httpResponse.getEntity(); //通过EntityUtils工具类将数据解析成字符串 String string = EntityUtils.toString(entity); //返回请求的网络数据(json) return string; } } catch (IOException e) { e.printStackTrace(); } return ""; } }