Java httpURLConnection.getOutputStream()上的readTimeout?
我将Java httpURLConnection.getOutputStream()上的readTimeout?,java,httpurlconnection,outputstream,urlconnection,socket-timeout-exception,Java,Httpurlconnection,Outputstream,Urlconnection,Socket Timeout Exception,我将HttpURLConnection的readTimeout设置为500毫秒进行测试。根据我的理解,readTimeout是等待响应的最长允许时间。但是,当我运行应用程序时,会在getOutputStream处引发异常。异常显然是由于读取超时造成的 为什么readTimeout发生在getOutputStream?我认为getOutputStream只用于发送数据,因此不应该等待任何响应。由于它不必等待任何响应,readTimeout无法发生。最初,我认为readTimeout将发生在getI
HttpURLConnection
的readTimeout
设置为500毫秒进行测试。根据我的理解,readTimeout
是等待响应的最长允许时间。但是,当我运行应用程序时,会在getOutputStream
处引发异常。异常
显然是由于读取超时
造成的
为什么readTimeout
发生在getOutputStream
?我认为getOutputStream
只用于发送数据,因此不应该等待任何响应。由于它不必等待任何响应,readTimeout
无法发生。最初,我认为readTimeout
将发生在getInputStream
上,因为它是接收/读取响应的地方。您能解释一下readTimeout
和connectTimeout
的工作原理吗
另外,当我在
getOutputStream
前后放置计时器时,调用getOutputStream
后,计时器的值仅为200多毫秒。我的readTimeout
为500毫秒。为什么getOutputStream
的超时时间早于我的readTimeout
的500毫秒值?请注意,我的connectTimeout
设置为0或无限。这有帮助吗@戴夫:谢谢!但是你给我的链接上没有设置readTimeout。我的问题是,当我认为readTimeout应该用于getInputStream时,readTimeout如何影响getOutputStream。