JAVA里HTTP连接为什么使用Range报头没有效果?

来源:百度知道 编辑:UC知道 时间:2024/06/15 06:42:57
比如我想读取百度首页的源文件,并且是跳过前面1000个字节的,下面的JAVA代码这样写没有任何效果,读取的还是百度首页的整个源文件,请问这是怎么回事,是不是网站那边可以不承认Range这个报头的?我用封包监视软件看了一下OPERA浏览器打开一个网站的首页,它每次下载到的文件块是536字节,但我编写JAVA代码打开同样的网站首页却是每个文件块1072字节,但OPERA的报头里并没有使用Range,真是奇怪
......
URL u=new URL("http://www.baidu.com");
HttpURLConnection h=(HttpURLConnection)u.openConnection();
h.setRequestProperty("Range","bytes=1000-");

URL url = new URL("http://www.mydomain.com/down.zip";);
HttpURLConnection httpConnection=(HttpURLConnection) url.openConnection();
//设置断点续传的开始位置
httpConnection.setRequestProperty("RANGE","bytes=10000");
//设置请求信息
httpConnection.setRequestProperty("GET","/down.zip HTTP/1.1");
//设置接受信息
httpConnection.setRequestProperty("Accept","image/gif,image/x-xbitmap,application/
msword,*/*");
//设置连接信息
httpConnection.setRequestProperty("Connection","Keep-Alive");
//获得输入流
InputStream input = httpConnection.getInputStream();