Tôi đang cố gắng tải xuống một phần của tệp PDF (chỉ để kiểm tra tiêu đề "Phạm vi"). Tôi yêu cầu máy chủ cho các byte (0-24) trong Phạm vi nhưng vẫn còn, thay vì nhận được 25 byte đầu tiên (một phần) ra khỏi nội dung, tôi nhận được nội dung đầy đủ chiều dài. Hơn nữa, thay vì nhận được mã phản hồi như 206 (nội dung từng phần), tôi nhận được mã phản hồi như 200.Tải xuống một phần của Tệp bằng Yêu cầu HTTP
Dưới đây là mã của tôi:
public static void main(String a[]) {
try {
URL url = new URL("http://download.oracle.com/otn-pub/java/jdk/7u21-b11/jdk-7u21-windows-x64.exe?AuthParam=1372502269_599691fc0025a1f2da7723b644f44ece");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestProperty("Range", "Bytes=0-24");
urlConnection.connect();
System.out.println("Respnse Code: " + urlConnection.getResponseCode());
System.out.println("Content-Length: " + urlConnection.getContentLengthLong());
InputStream inputStream = urlConnection.getInputStream();
long size = 0;
while(inputStream.read() != -1)
size++;
System.out.println("Downloaded Size: " + size);
}catch(MalformedURLException mue) {
mue.printStackTrace();
}catch(IOException ioe) {
ioe.printStackTrace();
}
}
Dưới đây là kết quả:
Respnse Code: 200
Content-Length: 94973848
Downloaded Size: 94973848
Cảm ơn trước.
Bạn có thể xác minh rằng một chương trình mà có thể tải xuống phạm vi không thực sự tải về một phạm vi? (hãy thử bắt đầu wget, Ctrl + C'ing nó và bắt đầu lại) Một số máy chủ có thể từ chối yêu cầu. – hexafraction