OkhttpPost加拦截器
2017-12-17 20:30
344 查看
package wld.bawei.com.myjindong.AddMVP; import android.os.Handler; import org.json.JSONException; import org.json.JSONObject; import java.io.IOException; import java.util.Map; import okhttp3.Call; import okhttp3.Callback; import okhttp3.FormBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import wld.bawei.com.myjindong.CommonParamsInterceptor; /** * Created by 大金鑫 on 2017/12/15. */ public class AddOkHttp { private Handler handler=new Handler(); private static AddOkHttp addOkHttp; private String code; private AddOkHttp(){} public static AddOkHttp getInsentce(){ if(addOkHttp==null){ synchronized (AddOkHttp.class){ if(addOkHttp==null){ addOkHttp=new AddOkHttp(); } } } return addOkHttp; } public void doPost(String path, Map<String,String> map, final AddCallBack addCallBack){ OkHttpClient okHttpClient = new OkHttpClient.Builder() .addInterceptor(new CommonParamsInterceptor()) .build(); FormBody.Builder builder = new FormBody.Builder(); for(String key:map.keySet()){ builder.add(key,map.get(key)); } Request builder1 = new Request.Builder().post(builder.build()).url(path).build(); Call call = okHttpClient.newCall(builder1); call.enqueue(new Callback() { @Override public void onFailure(Call call, final IOException e) { handler.post(new Runnable() { @Override public void run() { addCallBack.onFailure(e.getMessage()); } }); } @Override public void onResponse(Call call, Response response) throws I 4000 OException { try { JSONObject jsonObject = new JSONObject(response.body().string()); code = jsonObject.optString("code"); handler.post(new Runnable() { @Override public void run() { addCallBack.onSuccess(code); } }); } catch (JSONException e) { e.printStackTrace(); } } }); } }
相关文章推荐
- OKHttp使用拦截器(Interceptor)POST与GET方法,统一封装传公共参数
- OkHttp(get,post,拦截器,上传,下载)
- OkHttp的get,post请求,拦截器
- OKHttp(一)---------post方式请求
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 常用的okhttp post上传方式
- OkHttp get post请求的封装
- OkHttp框架二次封装,post json格式的参数(上)
- okhttp添加本地缓存(支持get post)
- OkHttp的基本使用(二)Post请求
- 开源项目OkHttpPlus——支持GET、POST、UI线程回调、JSON格式解析、链式调用、文件上传下载
- 由浅入深了解OkHttp四—>OkHttp拦截器核心代码总结
- OkHttp Post请求方式
- okhttp get post 使用源代码
- OkHttp拦截器
- okhttp GET请求 post请求
- OkHttp3源码解析02-拦截器
- okhttp之自定义Interceptor:请求失败切换IP重试拦截器
- OKHttp(三)---------post方式上传图片