Java 设置 Http 请求超时时间 Java 中可以使用 HttpURLConnection 来请求 WEB 资源。 HttpURLConnection 对象不能直接构造,需要通过 () 来获得 HttpURLConnection 对象,示例代码如下: String szUrl ="/"; URL url =new URL(szUrl); HttpURLConnection urlCon =(HttpURLConnection)(); HttpURLConnection 是基于 HTTP 协议的,其底层通过 socket 通信实现。如果不设置超时( timeout ),在网络异常的情况下,可能会导致程序僵死而不继续往下执行。可以通过以下两个语句来设置相应的超时: (".", 超时毫秒数字符串); (".", 超时毫秒数字符串); 其中:. :连接主机的超时时间(单位: 毫秒) . :从主机读取数据的超时时间(单位:毫秒) 例如: (".", "30000"); (".", "30000"); JDK 以前的版本,只能通过设置这两个系统属性来控制网络超时。 中, 还可以使用 HttpURLConnection 的父类 URLConnection 的以下两个方法: setConnectTimeout :设置连接主机超时(单位:毫秒) setReadTimeout :设置从主机读取数据超时(单位:毫秒) 例如: HttpURLConnection urlCon =(HttpURLConnection)(); (30000); (30000); 需要注意的是,笔者在 环境下,发现在设置了 defaultReadTimeou t 的情况下,如果发生网络超时, HttpURLConnection 会自动重新提交一次请求, 出现一次请求调用,请求服务器两次的问题(Trouble )。我认为这是 . 2 的一个 bug 。在 中,此问题已得到解决,不存在自动重发现象。 import .*; import .*; /** * ***@author chenzhimin * */ public class TestUrl { /** * 只能用户 HTTP 协议* ***@param photoUrl * ***@param fileName * ***@return */ public boolean saveUrlAs(String photoUrl, Stri
Java设置Http请求超时时间 来自淘豆网m.daumloan.com转载请标明出处.