现在的位置: 首页 > 综合 > 正文

如何在Http连接中设置超时?

2013年10月13日 ⁄ 综合 ⁄ 共 780字 ⁄ 字号 评论关闭

我准备利用HttpURLConnection实现一个Http的客户端,但我没有找到如何来设置超时时间。  
  有位大侠指点,让我用TimerTask   来完成,在规定时间以后来自己手动断掉连接。  
  方法是不错,不过麻烦了一些,不知是否还有其它方法可以利用。  
   
  请各位指点。  

 

下面是清华BBS上一个大侠给我回的,请各位继续献计。  
   
  我查了关于HttpURLConnection的方法,里面并没有关于设置timeout的方法  
  然后我又查了关于http协议的rfc2068文档,现摘抄一段如下:  
  RFC   2068                                                 HTTP/1.1                                         January   1997  
   
   
  10.4.9   408   Request   Timeout  
   
        The   client   did   not   produce   a   request   within   the   time   that   the   server  
        was   prepared   to   wait.   The   client   MAY   repeat   the   request   without  
        modifications   at   any   later   time.  
   
          这是关于Request   timeout的说明,是指服务器在规定的时间内没有响应客户端的请求就产生Request   timeout   错误.  
   
          由此能不能理解为timeout的时间是由服务器规定的,而客户端不能设置该属性,我看比较理想的解决方案就是手动编写控制连接的时间了可以编写程序在规定的时间内,http连接失败就可以了不知道哪位还有更好的方法。

 

可以调用HttpURLConnection的setConnectTimeout和setReadTimeout这两个方法

抱歉!评论已关闭.