http超时请求设置
标签:blog 完成 public 超时 gpo timeout pci www enc
今天在测试 的时候异常发现超时设置尽然没有生效,很是纳闷,原先是只设置了connenctionTImeout发现超时无效 ,百度后加上了Socket超时
HTTP请求时候总是设置的两个参数ConnectionTimeOut和SocketTimeOut
在HTTP请求时候总是设置两个参数,就是连接超时和Socket超时
1 public static final String SO_TIMEOUT = "http.socket.timeout"; 2 public static final String CONNECTION_TIMEOUT ="http.connection.timeout";
解析:
一次http请求,必定会有三个阶段,一:建立连接;二:数据传送;三,断开连接。
当建立连接在规定的时间内(ConnectionTimeOut )没有完成,那么此次连接就结束了。后续的SocketTimeOutException就一定不会发生。只有当连接建立起来后,
也就是没有发生ConnectionTimeOutException ,才会开始传输数据,如果数据在规定的时间内(SocketTimeOut)传输完毕,则断开连接。否则,触发SocketTimeOutException
http超时请求设置的问题