簡體   English   中英

通過下載對話框從URL下載Java文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM