【问题标题】:Java - How to programmatically download an attachment from a URL which opens a new tab?Java - 如何以编程方式从打开新选项卡的 URL 下载附件?
【发布时间】:2011-02-26 18:28:07
【问题描述】:

我需要使用Java 以编程方式从URL(比如http://mywebsite.com)下载附件。棘手的部分是上面的 URL 打开了一个新的标签/窗口onload,下载实际上是从这里开始的。

例如

  1. 打开http://mywebsite.com
  2. http://mywebsite.com 加载并打开一个新标签http://mywebsite.com/attachments/someRandomFileName.pdf

*注意步骤2(上图)中的文件名是随机分配的,所以我不能直接点击http://mywebsite.com/attachments/someRandomFileName.pdf

提前致谢!

【问题讨论】:

  • 您能否从您从http://mywebsite/com 收到的 HTML 中嵌入(或链接到)的 JavaScript 代码中提取 URL?
  • 无论是通过setTimeout 还是Ajax 调用,必须以某种方式将启动的URL 传递到原始页面。如果它没有嵌入到页面中,您将不得不复制浏览器并执行必要的 JavaScript 代码(或至少复制页面将发出的 HTTP 请求)。

标签: java http download


【解决方案1】:

随机生成的 URL 的全部意义在于防止人们直接访问内容。

他们可能希望用户通过他们的网站访问文件。有很多方法可以检查请求是否来自真实的用户/浏览器。这包括执行 javascript 和/或 flash。在服务器上生成随机 URL,并在某些时候将它们发送到浏览器。

因此,基本上,要下载文件,您必须查看他们的网站在做什么,它正在发出什么样的请求,以及它从服务器得到什么回复。然后尝试对其进行逆向工程以直接获取代表文件的随机 URL。

【讨论】:

  • 谢谢彼得!我会尝试对网站进行逆向工程(这会非常棘手)
猜你喜欢
  • 2010-09-30
  • 2010-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多