okhttp3 2配置解读

今天我们看看OkHttpClient 里面的一些配置信息

  final Dispatcher dispatcher; //线程调度器
  final @Nullable Proxy proxy; //直连,代理,还是socket的,枚举
  final List<Protocol> protocols; //所支持的http协议列表
  final List<ConnectionSpec> connectionSpecs; //所支持的TLS连接标准,客户端给服务器的版本
  final List<Interceptor> interceptors; // 各个请求响应的包装
  final List<Interceptor> networkInterceptors; // 网络调试的的interceptor列表
  final EventListener.Factory eventListenerFactory;//EventListener事情回调的工厂
  final ProxySelector proxySelector;// 代理的选择 与proxy配合使用
  final CookieJar cookieJar; // cookie容器,okhttp并没有实现,需要自己自定义
  final @Nullable Cache cache; //缓存http的响应,下次请求是,可在此处先看看有没有
  final @Nullable InternalCache internalCache; // 与Cache配套使用
  final SocketFactory socketFactory;  //socket连接工厂
  final SSLSocketFactory sslSocketFactory; //创建TLS加密连接的工厂
  final CertificateChainCleaner certificateChainCleaner; //证书验证
  final HostnameVerifier hostnameVerifier; // host 验证
  final CertificatePinner certificatePinner; // 额外证书验证
  final Authenticator proxyAuthenticator; //代理的权限token刷新  
  final Authenticator authenticator; // 权限token刷新
  final ConnectionPool connectionPool; //连接池
  final Dns dns; // Dns 解析
  final boolean followSslRedirects;// 是否协议切换重定向
  final boolean followRedirects; // 是否重定向
  final boolean retryOnConnectionFailure; //是否请求重试
  final int callTimeout;
  final int connectTimeout;
  final int readTimeout;
  final int writeTimeout;
  final int pingInterval;