我正在尝试使用HttpsURLConnection在Java中执行HTTPS equest。我遇到的问题是内容长度是" -1"这是不应该的。
我尝试了不同的https页面,它们都返回-1作为内容长度
这是我的代码:
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import javax.net.ssl.HttpsURLConnection;
public class Test {
public static void main(String[] args) throws Exception {
String realURL = "https://facebook.com";
URL myurl = null;
try {
myurl = new URL(realURL);
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
HttpsURLConnection conn = (HttpsURLConnection)myurl.openConnection();
System.out.println ( conn.getContentLength()
);
}
}
我做错了什么?感谢我能得到的所有帮助,谢谢。
答案 0 :(得分:2)
URLConnection.getContentLength()
的Javadoc说:
返回:此连接的URL所在资源的内容长度 引用,如果内容长度未知,则为-1,或者内容 length大于Integer.MAX_VALUE。
Facebook没有以content-length
标题回复,因此您收到-1。