1

我在 PHP 中编写了一个下载脚本,如下所示,我的脚本正在正确下载文件,但我感觉浏览器(chrome)进度条没有定期正确更新。

我的文件大小为 320MB,在下载该文件时,进度会随机​​更新为“11MB、76MB、200Mb 和 320MB”或“70MB 和 320MB”等。

在大多数站点中,下载进度更新是在每 MB 之后不断发生的,所以我想知道我们如何控制进度更新间隔,可能是通过发送一些额外的标头或其他东西。

我想通过定期更新进度来改善用户体验,所以请任何人帮助我以适当的方式处理这种情况。

// 用于 ZIP 文件下载的 HTTP 标头
// http://perishablepress.com/press/2010/11/17/http-headers-file-downloads/

// 文件变量
$filename = "电影曲调.zip";
$filepath = "文件/";

// 用于 zip 下载的 http 标头
header("Pragma: public");
header("过期时间:0");
header("Cache-Control: public,must-revalidate, post-check=0, pre-check=0");
header("内容描述:文件传输"); // MIME

header("内容类型:应用程序/八位字节流");
header("内容配置:附件;文件名=\"".$filename."\"");

header("内容传输编码:二进制"); // MIME
header("内容长度:".filesize($filepath.$filename));
ob_end_flush();
@readfile($filepath.$filename);

谢谢,
湿婆

4

1 回答 1

0

不,您不能影响浏览器何时/如何更新其下载进度条。

于 2012-07-25T08:28:19.970 回答