我正在连接到 Web 服务,但没有在 HttpURLConnection 上设置任何连接超时和读取超时。默认的连接超时和读取超时是多少?是否依赖于Android手机?或者Android/Java有自己的超时默认值吗?
当我尝试获取连接超时值时(getConnectTimeout()
)和读取超时(getReadTimeout()
),它返回一个值 0,我认为它相当于无穷大。然而,即使它们的值为 0,有时我仍然收到请求超时错误。所以它们的值不可能等于无穷大。有人可以启发我吗?
你做了什么研究吗?默认值详细信息参见文档。这是相关部分:
public void setConnectTimeout (int timeout) 自:API 级别 1
设置建立连接的超时值(以毫秒为单位)
指向此 URLConnection 实例所指向的资源。 A
如果无法建立连接,则抛出 SocketTimeoutException
就在这个时候成立的。默认为0,代表无限
暂停。
public void setReadTimeout (int timeout) 自:API 级别 1
设置从输入读取的超时值(以毫秒为单位)
与资源建立的连接的流。 A
如果无法建立连接,则抛出 SocketTimeoutException
就在这个时候成立的。默认为0,代表无限
暂停。
还有关于超时的注释:
URLConnection 支持两种超时:连接超时和
读取超时。默认情况下,操作永远不会超时。
您连接的服务器可能使您的客户端超时。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)