发送文件到浏览器进行下载

我正在构build一个简单的视觉下载器。 用户select他们想要下载的文件,然后下载这些文件。 但是我处理的文件相当大。 我所做的是让用户select他们需要的文件,并通过文件名列表perl成功。 我想要做的是通过perl脚本stream压缩tarball到他们的浏览器,但我不知道如何做到这一点。

如果我运行一个系统命令来tar一大堆文件(其名称在一个数组中),我将如何直接“stream”tarball,以便用户可以下载文件,而无需在本地存储压缩的tarball?

任何帮助,将不胜感激。 谢谢。

编辑:所以我有perlstream文件,但我怎么处理它在Javascript结束。

perl调用是这样做的:

$.ajax({ type: "POST", url: "/cgi-bin/download.pl", data: info, success: function(data){ window.open(data,'Download'); } }); 

使用管道。

运行没有f参数的tar(即没有文件,输出到杰出)。 然后捕获并发送输出。 你可以使用popen() ,或者反斜杠:`。

  • 生成输出文件
  • 发送MIME头
  • 流式传输文件
  • 例如: http : //forums.devshed.com/beginner-programming-16/perl-script-for-force-download-i-know-it-s-been-asked-128474.html举例