优化OkHttps

OkHttp框架详解与实践
private static volatile OkHttps instance;
    private static Request request;
    private static RequestBody builder;
    private static OkHttpClient okHttpClient;
    private   static Interceptor getInterceptor(){
        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;
    };


    //创建Get请求方法
    private     OkHttps() {
        File file = new File(Environment.getExternalStorageDirectory(), "cache11");
        okHttpClient = new OkHttpClient().newBuilder()
                .readTimeout(3000, TimeUnit.SECONDS)   //设置读取超时时间
                .connectTimeout(3000, TimeUnit.SECONDS) //设置连接的超时时间
                .addInterceptor(getInterceptor())//Application拦截器
                .cache(new Cache(file, 10 * 1024))
                .build();
    }
    //实现单利模式
    //单例okhttp
    //OkHttps
    public static    OkHttps getInstance() {
        if (instance == null) {
            synchronized (OkHttps.class) {
                if (null == instance) {
                    instance = new OkHttps();
                }
            }
        }
        return instance;
    }

    public  static void  OkHttpget(String url, Callback callss){
        //创建okHttpClient
        okHttpClient = new OkHttpClient().newBuilder().
                addInterceptor(getInterceptor()).build();
        //创建request
        request = new Request.Builder().url(url).method("GET",null).build();
        //
        okHttpClient.newCall(request).enqueue(callss);
    }
    //okhttp post请求
    public static  void OkHttpPost(String url,String name,String pswd ,Callback call){
        okHttpClient = new OkHttpClient().
                newBuilder().
                addInterceptor(getInterceptor()).build();
        builder = new FormBody.Builder()
                .add("mobile",name)
                .add("password",pswd)
                .build();
        //创建request
        request = new Request
                .Builder()
                .url(url)
                .post(builder)
                .build();
        okHttpClient.newCall(request).enqueue(call);
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值