OkHttp网络封装(登录,注册,请求数据)

public class Okhttp {
//单例
private final static Okhttp OKHTTP = new Okhttp();

public Okhttp() {

}

public static Okhttp getdanli() {
    return OKHTTP;
}
//拦截器

private Interceptor getAppInterceptor(){
Interceptor interceptor=new Interceptor() {
@Override
public Response intercept(Chain chain) throws IOException {
Request request=chain.request();
Log.e("+++++++++++++++",“拦截前”);
Response response=chain.proceed(request);
Log.e("+++++++++++++++",“拦截后”);
return response;
}
};
return interceptor;
}
//耗时操作
private HttpUtils(){
File file=new File(Environment.getExternalStorageDirectory(),“cachell”);
client=new OkHttpClient().newBuilder()
.readTimeout(3000,TimeUnit.SECONDS)
.connectTimeout(3000,TimeUnit.SECONDS)
.addInterceptor(getAppInterceptor())
.cache(new Cache(file,10*1024))
.build();

// get请求接口数据
public void get(String url, final getokhttp getokhttp){
OkHttpClient okHttpClient = new OkHttpClient();
final Request request = new Request.Builder().url(url).build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {

        }

        @Override
        public void onResponse(Call call, Response response) throws IOException {
            String string = response.body().string();
            getokhttp.getcheng(string);
        }
    });
}
//post请求登录注册接口
public void post(String url,String name,String pwd, final getokhttp getokhttp){
    OkHttpClient okHttpClient = new OkHttpClient();
   RequestBody requestBody =new FormBody.Builder().add("phone",name).add("pwd",pwd).build();
    Request request = new Request.Builder().url(url).post(requestBody).build();
    okHttpClient.newCall(request).enqueue(new Callback() {
        @Override
        public void onFailure(Call call, IOException e) {

        }

        @Override
        public void onResponse(Call call, Response response) throws IOException {
            String string = response.body().string();
            Log.i("AA","okhttp"+string);
            getokhttp.getcheng(string);
        }
    });
}
//内部接口 成功回调
public interface getokhttp{
    void getcheng(String s);
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值