- Builder模式:用于构建OkHttpClient、Request和Response等类的对象,以实现链式调用和可配置性。
- Singleton模式:用于创建OkHttpClient和Dispatcher等类的单例对象,以确保全局只有一个实例。
- Factory模式:用于创建Call和WebSocket等类的对象,以隐藏对象的创建细节并提供灵活性。
- Chain of Responsibility模式:用于处理Interceptor链,以允许多个拦截器依次处理请求和响应。
- Template Method模式:用于定义OkHttp的网络请求和响应流程,以确保一致性和可扩展性。
- Observer模式:用于WebSocket和RealWebSocket等类,以允许多个观察者监听同一个主题,并在主题发生变化时得到通知。
- Proxy模式:用于缓存CacheInterceptor和ConnectInterceptor等类,以提高性能和效率。
- Decorator模式:用于GzipRequestInterceptor和GzipResponseInterceptor等类,以在原有的请求和响应上添加压缩功能。
- Iterator模式:用于Headers类,以提供遍历和查询头部信息的功能。
- Command模式:用于CallServerInterceptor等类,以将请求和响应的处理过程封装为命令对象,并支持撤销和重做等操作。