自己简单的封装一个OKHttp工具类
2017-12-15 12:07
465 查看
public class HttpUtils { private static volatile HttpUtils httpUtils; private OkHttpClient okHttpClient; private HttpUtils() { //创建OKhttpClient和拦截器 HttpLoggingInterceptor logging = new HttpLoggingInterceptor(); logging.setLevel(HttpLoggingInterceptor.Level.BODY); okHttpClient = new OkHttpClient.Builder() .addInterceptor(logging) .build(); } //单例模式 public static HttpUtils getHttpUtils(){ if (httpUtils == null){ synchronized (HttpUtils.class){ if (httpUtils == null){ httpUtils = new HttpUtils(); } } } return httpUtils; } //Get public void doGet(String url, Callback callback){ //此处应该放置判断网络 Request request = new Request.Builder().url(url).get().build(); okHttpClient.newCall(request).enqueue(callback); } //post public void doPost(String url, Map<String,String> params,Callback callback){ //此处应该放置判断网络 //判断参数 if (params == null ||params.size() == 0){ throw new RuntimeException("params is null!!!"); } FormBody.Builder builder = new FormBody.Builder(); for (Map.Entry<String,String> entry:params.entrySet()){ builder.add(entry.getKey(),entry.getValue()); } FormBody formBody = builder.build(); Request request = new Request.Builder() .url(url) .post(formBody) .build(); okHttpClient.newCall(request).enqueue(callback); } }
相关文章推荐
- 闲来无事,将自己收集到的工具类封装了下,做了一个lib,写了个简单的mvp,初学者可以看看
- 简单的封装了一个OKHttp网络请求工具类,直接粘贴进去调用使用,很方便
- 一个简单封装的jdbc工具类
- OKhttp封装的工具类 可以拷到自己项目中直接用
- 一个简单封装的jdbc工具类
- 【Android】封装一个简单好用的打印Log的工具类
- 非常简单的OKhttp封装工具类
- Swift - 简单封装一个工具类模板
- 自己简单封装的一个CDialog类
- 用OKHTTP封装的一个更简单更方便的HTTP请求框架--QuickHttp
- 最近在写导出excel表格的代码,发现网上大部分代码都是导出简单格式的excel,所以自己顺便就写了一个导出复杂表格的工具类,有些代码是借鉴网友的,同时也谢谢分享代码的朋友们.
- 【Android】封装一个简单好用的打印Log的工具类
- 自己封装的一个最简单的ajax
- 自己简单封装的一个CDialog类
- 自己封装一个简单的自定义检索
- 【一个简单封装的jdbc工具类】
- 自己封装的一个简单的倒计时功能实例
- okhttp3简单封装GET和POST请求工具类
- 自己封装的一个工具类
- 自己封装的一个工具类