[英]Java Download file from url with download dialog
我想從最初顯示一些html的url下載文件,然后在2-3秒后顯示一個下載對話框。 顯然,如果我這樣做:
try {
URL url = new URL("http://my.url");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Content-Length",
Integer.toString(Integer.MAX_VALUE));
con.setReadTimeout(Integer.MAX_VALUE);
con.setConnectTimeout(Integer.MAX_VALUE);
con.connect();
bis = new BufferedInputStream(con.getInputStream(), 4096);
byteArray = IOUtils.toByteArray(bis);
FileUtils.writeByteArrayToFile(new File("myFile"), byteArray);
} catch (Exception e) {
}
我將保存顯示的.html而不是保存對話框中顯示的文件。 我應該如何更改代碼才能做到這一點?
我猜該對話框只有一些javascript,需要等待幾秒鍾,然后請求將文件下載嵌入對話框中的某個位置。
在這種情況下,如果您確定“實際下載”包含在哪個元素中,則可以使用JSoup或任何其他HTML解析器庫將鏈接從頁面中刪除。
如果下載鏈接是動態生成的,顯然您只需要這樣做。
在執行rossa建議的操作后,我建議在對話框窗口中設置javascript斷點,以弄清楚實際請求的URL的確切程度。
您確定網址是您要下載的文件的確切位置嗎? 我的意思是,是否存在任何重定向-您可以在瀏覽器中檢入並使用HTTP標頭擴展名,例如檢查幕后情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.