java - 下载 URL 内容超时

标签 java urlconnection

我想在指定的下载时间下载java中的URL内容。例如:我希望 www.yahoo.com 的最大下载超时时间为 10 秒。如果下载时间超过 10 秒,则应抛出错误。我已经编写了打开连接和下载全部内容的代码。但是如何设置下载超时?这是代码片段:

        StringBuilder text = new StringBuilder();

        urlconn = (HttpURLConnection)url.openConnection();
        urlconn.setConnectTimeout(100000);
      //urlconn.setInstanceFollowRedirects(false);
        urlconn.setRequestMethod("GET");
        urlconn.connect();
        buf = new BufferedReader(new InputStreamReader(urlconn.getInputStream())); 
        while((line = buf.readLine()) != null)
            text.append(line);
        System.out.println(url + "=> "+ urlconn.getResponseCode());

最佳答案

可以通过URLConnection#setReadTimeout()设置.

urlconn.setReadTimeout(10000); // 10 sec
// ...

关于java - 下载 URL 内容超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6182865/

相关文章:

如果签名不同,Java编译器禁止在内部类中创建与外部类同名的方法

当我调用 getInputStream 时,Java URLConnection 使整个过程崩溃

java - java中的异步HTTP请求

java - 使用带有 GET 的 java.net.URLConnection,如何获取重定向 URL?

android - setImageURI/setimagebitmap 从网络中获取图像并在 ImageView 中显示

java - 'synchronized'是什么意思?

java - 如何在 JavaFX 中获取阶段的关闭事件?

java - 异步Java : Help flatten my nested Mono

java - 如何通过 post man post 请求在 header 中传递对象?

java - 使用 URLConnection 的摘要认证