OkHttp

参考:彻底理解OkHttp - OkHttp 源码解析及OkHttp的设计思想

用法

  1. 创建OkHttp实例,可通过OkHttpClient.Builder添加拦截器等自定配置

  2. 请求网络,可以同步/异步

    Request request = new Request.Builder().url(url).build();
    //同步
    Response response = okHttpClient.newCall(request).execute();
    response.body().string();
    
    //异步
    okHttpClient.newCall(request).enqueue();

OkHttp大致执行流程

通过OkHttpClient.newCall内部的RealCall发起网络请求(execute同步请求和enqueue异步请求,异步请求有DIspatcher进行分发),getResponseWithInterceptorChainRetryAndFollowUpInterceptors, 以及BridgeInterceptor, CacheInterceptor, ConnectInterceptor, NetworkInterceptor, CallServerInterceptor进行请求处理,最后返回请求结果,请求结束。

Last updated

Was this helpful?