OkHttp网络日志事件疑问:requestBody/responseBody时间差及网络调用
OkHttp EventListener 日志事件解析
调试日志
[2023-05-05 18:20:27.899] - requestBodyStart [2023-05-05 18:20:28.240] - requestBodyEnd [2023-05-05 18:20:28.417] - responseBodyStart [2023-05-05 18:20:28.417] - responseBodyEnd
疑问解答
requestBodyStart与requestBodyEnd之间的时间差代表什么?
这段时间是OkHttp处理并发送请求体的总耗时,包含两部分:一是客户端本地对请求负载的处理(比如序列化对象、编码数据),二是通过网络连接把请求体数据发送到服务器的传输时间。如果请求体体积大,这段耗时会明显增加。requestBodyEnd与responseBodyStart之间的时间差代表什么?
这段时间是服务器处理请求的耗时,加上响应数据从服务器传输回客户端的耗时。简单说就是客户端发完请求后,等待服务器给出响应的“空窗期”。requestBodyStart与requestBodyEnd之间是否涉及网络调用,还是仅包含客户端配置和请求负载?
涉及网络调用。除了客户端本地对请求负载的处理(序列化、编码等),这段过程还包括通过已建立的网络连接将请求体数据发送到服务器的操作。连接建立相关的耗时会在更早的事件(比如connectStart/connectEnd)中体现,不属于这个时间区间。
内容的提问来源于stack exchange,提问作者Gaurav Massand
相关产品推荐
相关产品推荐

