【问题标题】:HttpURLConnection - unexpected end of fileHttpURLConnection - 文件意外结束
【发布时间】:2017-06-05 11:19:18
【问题描述】:

这就是我遇到的问题。

String link = "http://redirwebhost.eu?cbsecur=W"

URL url = new URL(link);
HttpURLConnection conn =(HttpURLConnection)url.openConnection();
conn.setReadTimeout(5000);
urlConnection.getResponseCode();

然后它返回 来自服务器的文件意外结束。堆栈跟踪如下: java.net.SocketException:来自服务器的文件意外结束 在 java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)

但是当

String link = "http://redirwebhost.eu/?cbsecur=W"

(/之前?)它工作正常。你知道为什么吗?在 curl 或浏览器中,这两个版本都可以正常工作。

【问题讨论】:

  • 您使用的是哪个版本的 Java(java -version 的结果)?
  • @RealSkeptic java 1.7.0_79
  • urlConnection 在你的代码中等于 conn 吗?在 java 1.8 上,它适用于两个 url。
  • @petul。是的,urlConnection 等于 conn。对不起,我的错
  • 好吧,我无法重现您的问题 - 尝试使用 1.7.0_51 后,我得到了 200 响应代码,没有任何问题。

标签: java httpurlconnection


【解决方案1】:

它确实有效,在这里结帐 - http://tpcg.io/FO0r24

import java.net.*;
import java.io.IOException;
public class HelloWorld{

     public static void main(String []args){
        String link = "http://redirwebhost.eu?cbsecur=W";
        try {
            URL url = new URL(link);
            HttpURLConnection conn =(HttpURLConnection)url.openConnection();
            conn.setReadTimeout(5000);
            System.out.println(conn.getResponseCode());

        } catch (IOException e) {
            e.printStackTrace();
        }
     }
}

【讨论】:

    猜你喜欢
    • 2012-06-10
    • 2014-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多