Android面试题——掘金-三方框架之Okhttp(5.2)
一 概述
1 | OkHttp 面试题汇总 |
二 面试题解答(仅供参考)
2.1 OkHttp 是什么?主要作用是什么?
1 | 1.概念 |
2.2 OkHttp 请求流程是怎样的?
1 | 1.流程 |
2.3 OkHttp 的拦截器有哪些?作用是什么?
1 | 1.拦截器按职责分为两类: |
2.4 同步请求和异步请求的区别?
1 | 1.概念 |
2.5 OkHttp 的连接复用机制?
1 | -使用 连接池(ConnectionPool),默认最多复用 5 个连接、每个连接存活 5 分钟; |
2.6 OkHttp 的缓存机制?
1 | 1.概念 |
2.7 如何取消一个正在执行的请求?
1 | 1.方式1 |
2.8 如何设置请求超时?
1 | OkHttpClient.Builder() |
2.9 如何设置拦截器?区别是?
1 | 1.示例 |
2.10 OkHttp 如何支持 HTTPS?
1 | 1.概念 |
2.11 OkHttp 如何监听上传 / 下载进度?
1 | -上传进度:自定义 RequestBody; |
2.12 OkHttp 是如何实现请求重试的?
1 | 内置拦截器 RetryAndFollowUpInterceptor 会根据请求失败的原因进行自动重试或重定向: |
2.13 OkHttp 线程模型是怎样的?
1 | 1.概念 |
2.14 OkHttp 如何调试?常见工具有哪些?
1 | -使用 HttpLoggingInterceptor 打印请求日志; |
2.15 总结
关键能力 | 对应点 |
---|---|
拦截器链 | 核心职责拆分,易扩展 |
连接池 | 减少连接开销 |
缓存机制 | 提升访问速度,节省流量 |
线程调度 | Dispatcher 控制并发请求数 |
自定义能力 | 支持各种拦截器、证书、安全控制 |
三 参考
- 掘金—知识库的大纲