OKhttp封装类

public class OkhttpUtile {
public static OkhttpUtile utile;
OkHttpClient okHttpClient;
//构造方法私有化
private OkhttpUtile(){
okHttpClient = new OkHttpClient.Builder().addInterceptor(new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
Log.e(“tag” ,"url = " + request.url());
Response response = chain.proceed(request);
return response;
}
}).build();
}

public static synchronized OkhttpUtile getInstance(){
    if(utile == null){
        utile = new OkhttpUtile();
    }
    return utile;
}


//post
public void doPost(String url , String phone , String pwd , Callback callback){
    //FormBody.Builde用来封装参数
    FormBody.Builder builder = new FormBody.Builder();
    builder.add("phone" , phone);
    builder.add("pwd" ,pwd);

    //通过FormBody.Builder获取到RequestBody对象
    RequestBody body = builder.build();
    Request request = new Request.Builder()
            .url(url)
            .post(body)
            .build();

    Call call = okHttpClient.newCall(request);

    call.enqueue(callback);
}

public void doGet(String url , Map<String , String> map , Callback callback){

    if(map != null && map.size() > 0){
        StringBuilder stringBuilder = new StringBuilder();
        for(String key : map.keySet()){
            String value = map.get(key);
            stringBuilder.append(key)
                    .append("=")
                    .append(value)
                    .append("&");
        }
        String pstr = stringBuilder.toString();
        int index = pstr.lastIndexOf("&");
        pstr = pstr.substring(0 , index);
        url = url+ "?" + pstr;
    }

    Request request = new Request.Builder()
            .url(url)
            .get()
            .build();
    Call call = okHttpClient.newCall(request);
    call.enqueue(callback);
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值