如果请求包含POST数据,如何恢复下载?

时间:2016-11-19 07:47:49

标签: php post download resume-download

我有一个php文件,它使用POST参数生成要下载的文件。我已经完成了恢复文件下载的所有工作(使用Range标题和所有相关内容)。

但是,如果我暂停下载然后尝试恢复下载,则浏览器不会在请求中发送POST数据。这可以使用GET数据,但我想继续使用POST。我怎么能做这个工作?

注意:

  • 该文件是动态生成的,并使用正确的标题发送到浏览器(只需用php打印)。
  • 我无法将文件保存到某处并提供服务。 必须即时提供服务。

1 个答案:

答案 0 :(得分:0)

抱歉,我的英语不好。

好吧,假设您有数据库来保存POST参数 然后你需要根据参数创建唯一的下载URL 让我们说下载链接是dowload.php< - 你在这里发送POST。

现在你需要在那里保存params,然后让我们说你得到了unique_id 之后,您将页面重定向到处理下载的新页面(使用unique_id参数),例如resume_download.php

示例下载网址为resume_download.php?req=[your_unique_id] 或者您可以使用.htaccess使网址更友好

这并不保证下载会继续,但至少用户无需重新输入表单。