网络请求工具类HttpUtil
2017-10-18 14:08
453 查看
import android.content.Context; import android.os.AsyncTask; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import myapplication.myapplication.jiekou.HttpCallBack; /** * Created by Administrator on 2017/10/18. */ public class HttpUtil { public static void requestDataByHttp(final String path, Context context, final HttpCallBack callBack){ new AsyncTask<Void, Void, String>(){ @Override protected String doInBackground(Void... voids) { try { URL url = new URL(path); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setConnectTimeout(5000); connection.setReadTimeout(5000); int responseCode = connection.getResponseCode(); if(responseCode == 200){ InputStream inputStream = connection.getInputStream(); String s = streamToString(inputStream, "utf-8"); return s; } } catch (Exception e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); callBack.onRequestComplete(s); } }.execute(); } private static String streamToString(InputStream inputStream,String charset) { try { InputStreamReader inputStreamReader = new InputStreamReader(inputStream,charset); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String s = null; StringBuilder builder = new StringBuilder(); while ((s = bufferedReader.readLine()) != null){ builder.append(s); } bufferedReader.close(); return builder.toString(); } catch (Exception e) { e.printStackTrace(); } return null; } }
接口:
/** * Created by Administrator on 2017/10/18. */ public interface HttpCallBack { void onRequestComplete(String json); }
相关文章推荐
- 网络请求应该是HttpUtil 工具类
- Android HttpUtils网络请求工具类的实现
- HttpClientProxyUtil HTTPClient请求工具类源码
- HttpClientUtil请求http地址的工具类
- [置顶] OKRx+OkGo(okhttp-util升级版)网络请求框架使用
- 利用线程池实现Android客户端的http网络数据请求工具类
- httpCilent请求网络 及 StreamUtils 工具类转换
- HttpURLConnection 单独封装网络请求工具类
- okhttp-OkGo(okhttp-util升级版)网络请求框架(二)
- AS3.0 网络加载Http请求工具类
- HttpUrlConnection 网络请求工具类
- Http请求工具类 httputil
- Android自定义网络连接工具类HttpUtil
- Android网络请求HttpUtil封装工具类
- Android-async-http 网络请求框架(工具类)
- okhttp-OkGo(okhttp-util升级版)网络请求框架(一)
- HttpClient与HttpURLConnection网络请求工具类
- 利用线程池实现Android客户端的http网络数据请求工具类
- Android自定义的网络连接工具类HttpUtil
- HttpUtils 用于进行网络请求的工具类