Android中OkHttp3中超时时间概述

目录

前言

可以看到,使用还是很简单的。主要相关的有这五个参数,其中我们常用到是就是connectTimeout、readTimeout和writeTimeout。

再看上图,可以看到默认下connectTimeout、readTimeout和writeTimeout都是10s,而其他两个默认是0。

connectTimeout

建立连接所用的时间,适用于网络状况正常的情况下,两端连接所用的时间。

防止客户端无限期地等待与服务器的连接。

readTimeout

从服务器接收到响应开始,到读取完所有响应数据的时间。

防止客户端在读取响应数据时因服务器发送数据过慢而长时间等待。

writeTimeout

客户端发送请求数据到服务器的时间。

确保客户端在发送请求数据时不会因网络问题或服务器接收数据过慢而无限期地等待。

callTimeout

这个值从调用call.execute()和enqueue()这两个方法开始计时,时间到后网络还未请求完成将调用cancel();

整个HTTP请求流程(包括连接、写入、读取等)所允许的最大时间。

pingInterval

没用过,和WebSocket有关。

拓展

其实我们还可以在拦截器里面动态设置超时,可以对某些url进行划分。另外,针对某些资源的获取如callTimeout的的设置会有一些问题。这里就不介绍了。

相关推荐
笨鸟先飞的橘猫11 分钟前
MMO游戏中的“跨服团队副本”匹配与状态同步系统
分布式·学习·游戏·lua·skynet
赏金术士1 小时前
Kotlin ViewModel
android·kotlin
雨落在了我的手上1 小时前
如何学习java?
java·开发语言·学习
吃好睡好便好2 小时前
汽车基本组成
学习·汽车
vistaup3 小时前
kotlin 二维码实现高斯模糊
android·kotlin
拾忆丶夜3 小时前
unity 热力图学习
学习·unity·游戏引擎
愈努力俞幸运4 小时前
function calling与mcp
android·数据库·redis
red_redemption4 小时前
自由学习记录(183)
学习·ue项目改名字的学问
lizhihai_994 小时前
股市学习心得-智能体顶层设计文件收益供应链
大数据·人工智能·学习
中草药z4 小时前
【测试基础】Python 核心语法,一篇搞定测试脚本开发基础
开发语言·笔记·python·学习·测试·语法