【问题标题】:Automatically downloading all files to a user preferred location on the machine自动将所有文件下载到机器上的用户首选位置
【发布时间】:2012-04-19 14:38:19
【问题描述】:

在我的 Web 应用程序中,客户端从服务器接收一组文件 url 作为 json。在客户端,我需要自动下载所有文件并将它们保存到用户首选位置。 有没有办法使用 javascript 或 jquery 做到这一点?

谢谢

【问题讨论】:

    标签: javascript jquery json download


    【解决方案1】:

    没有。如果任何网站都可以在您的计算机上下载任何文件,那将是一个巨大的安全漏洞。您只需将用户重定向到不同的文件位置,他必须手动选择要保存它们的位置。

    您还可以使用脚本语言(php、sh...)在服务器端创建一个存档并发送此存档,这样用户只需下载一个文件,但他必须在他的电脑上解压缩存档电脑。

    【讨论】:

    • 我可以询问用户下载文件的位置吗,就像我们有一个文件输入对话框一样?
    • 好吧,用户浏览器会弹出他自己的配置(通常是最后一个文件保存的位置),我认为你不能用 javascript 重载这种行为。但是您可能可以创建一个 java 小程序来执行此操作,但是用户需要在开始下载之前批准您的应用程序。
    • 非常感谢您的回复。我会使用您建议的第二个选项,在服务器上创建存档。客户端下载完成后如何自动删除此存档? .我的服务器端代码在 python 中,因为我使用 django web 框架。
    • 您可以创建一个 cron 任务来清理旧存档(1 天左右)。或者在创建新档案时清理旧档案(这对于每天一位客户来说可能很长)。或者创建存档的脚本,将正确的下载标头发送到客户端,在删除之前打印整个文件。 (但我不推荐这种方法,因为它需要很长时间执行,但在调用脚本后存档不会持续,如果你没有足够的磁盘空间,它可能是最好的。)
    【解决方案2】:

    出于安全原因,您将永远无法这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-12
      • 2017-09-24
      • 1970-01-01
      • 2017-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多